home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 17 / CU Amiga Magazine's Super CD-ROM 17 (1997)(EMAP Images)(GB)[!][issue 1997-12].iso / CUCD / Programming / DiceSource / src / dd / fixup.c < prev    next >
C/C++ Source or Header  |  1997-09-09  |  163KB  |  15,519 lines

  1. /*
  2.  *    (c)Copyright 1992-1997 Obvious Implementations Corp.  Redistribution and
  3.  *    use is allowed under the terms of the DICE-LICENSE FILE,
  4.  *    DICE-LICENSE.TXT.
  5.  */
  6. # 1 "fails.c" 0
  7.  
  8. # 1 "defs.h" 1
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16. # 1 "local/defs.h" 2
  17.  
  18.  
  19.  
  20. # 1 "dinclude:amiga20/exec/types.h" 3
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.    
  52.   
  53.  
  54.  
  55.  
  56. typedef void           *APTR;         
  57.  
  58. typedef long        LONG;         
  59. typedef unsigned long    ULONG;         
  60. typedef unsigned long    LONGBITS;    
  61. typedef short        WORD;         
  62. typedef unsigned short    UWORD;         
  63. typedef unsigned short    WORDBITS;    
  64.  
  65. typedef signed char    BYTE;         
  66.  
  67.  
  68.  
  69. typedef unsigned char    UBYTE;         
  70. typedef unsigned char    BYTEBITS;    
  71. typedef short        RPTR;         
  72. typedef unsigned char  *STRPTR;      
  73.  
  74.  
  75.  
  76. typedef short        SHORT;         
  77. typedef unsigned short    USHORT;      
  78. typedef short        COUNT;
  79. typedef unsigned short    UCOUNT;
  80. typedef ULONG        CPTR;
  81.  
  82.  
  83.  
  84. typedef float        FLOAT;
  85. typedef double        DOUBLE;
  86. typedef short        BOOL;
  87. typedef unsigned char    TEXT;
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.   
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110. # 4 "local/defs.h" 2
  111.  
  112. # 4 "local/defs.h" 2
  113.  
  114. # 1 "dinclude:amiga20/exec/execbase.h" 3
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131. # 1 "dinclude:amiga20/exec/lists.h" 4
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142.  
  143.  
  144.  
  145.  
  146.  
  147.  
  148. # 1 "dinclude:amiga20/exec/nodes.h" 5
  149.  
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172. struct Node {
  173.     struct  Node *ln_Succ;     
  174.     struct  Node *ln_Pred;     
  175.     UBYTE   ln_Type;
  176.     BYTE    ln_Pri;         
  177.     char    *ln_Name;         
  178. };     
  179.  
  180.  
  181. struct MinNode {
  182.     struct MinNode *mln_Succ;
  183.     struct MinNode *mln_Pred;
  184. };
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207.  
  208.  
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219. # 17 "dinclude:amiga20/exec/lists.h" 4
  220.  
  221. # 17 "dinclude:amiga20/exec/lists.h" 4
  222.  
  223.  
  224.  
  225.  
  226.  
  227. struct List {
  228.    struct  Node *lh_Head;
  229.    struct  Node *lh_Tail;
  230.    struct  Node *lh_TailPred;
  231.    UBYTE   lh_Type;
  232.    UBYTE   l_pad;
  233. };     
  234.  
  235.  
  236.  
  237.  
  238. struct MinList {
  239.    struct  MinNode *mlh_Head;
  240.    struct  MinNode *mlh_Tail;
  241.    struct  MinNode *mlh_TailPred;
  242. };     
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266. # 17 "dinclude:amiga20/exec/execbase.h" 3
  267.  
  268. # 17 "dinclude:amiga20/exec/execbase.h" 3
  269.  
  270.  
  271.  
  272.  
  273. # 1 "dinclude:amiga20/exec/interrupts.h" 4
  274.  
  275.  
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.  
  294.  
  295.  
  296.  
  297. struct Interrupt {
  298.     struct  Node is_Node;
  299.     APTR    is_Data;             
  300.     void    (*is_Code)();         
  301. };
  302.  
  303.  
  304. struct IntVector {         
  305.     APTR    iv_Data;
  306.     void    (*iv_Code)();
  307.     struct  Node *iv_Node;
  308. };
  309.  
  310.  
  311. struct SoftIntList {         
  312.     struct List sh_List;
  313.     UWORD  sh_Pad;
  314. };
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324. # 21 "dinclude:amiga20/exec/execbase.h" 3
  325.  
  326. # 21 "dinclude:amiga20/exec/execbase.h" 3
  327.  
  328.  
  329.  
  330.  
  331. # 1 "dinclude:amiga20/exec/libraries.h" 4
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349.  
  350.  
  351.  
  352.  
  353.  
  354.  
  355.  
  356.  
  357.  
  358.  
  359.  
  360.  
  361.  
  362.  
  363.  
  364.  
  365.  
  366. struct Library {
  367.     struct  Node lib_Node;
  368.     UBYTE   lib_Flags;
  369.     UBYTE   lib_pad;
  370.     UWORD   lib_NegSize;         
  371.     UWORD   lib_PosSize;         
  372.     UWORD   lib_Version;         
  373.     UWORD   lib_Revision;         
  374.     APTR    lib_IdString;         
  375.     ULONG   lib_Sum;             
  376.     UWORD   lib_OpenCnt;         
  377. };     
  378.  
  379.  
  380.  
  381.  
  382.  
  383.  
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400. # 25 "dinclude:amiga20/exec/execbase.h" 3
  401.  
  402. # 25 "dinclude:amiga20/exec/execbase.h" 3
  403.  
  404.  
  405.  
  406.  
  407. # 1 "dinclude:amiga20/exec/tasks.h" 4
  408.  
  409.  
  410.  
  411.  
  412.  
  413.  
  414.  
  415.  
  416.  
  417.  
  418.  
  419.  
  420.  
  421.  
  422.  
  423.  
  424.  
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432.  
  433. struct Task {
  434.     struct  Node tc_Node;
  435.     UBYTE   tc_Flags;
  436.     UBYTE   tc_State;
  437.     BYTE    tc_IDNestCnt;         
  438.     BYTE    tc_TDNestCnt;         
  439.     ULONG   tc_SigAlloc;         
  440.     ULONG   tc_SigWait;         
  441.     ULONG   tc_SigRecvd;         
  442.     ULONG   tc_SigExcept;         
  443.     UWORD   tc_TrapAlloc;         
  444.     UWORD   tc_TrapAble;         
  445.     APTR    tc_ExceptData;         
  446.     APTR    tc_ExceptCode;         
  447.     APTR    tc_TrapData;         
  448.     APTR    tc_TrapCode;         
  449.     APTR    tc_SPReg;             
  450.     APTR    tc_SPLower;         
  451.     APTR    tc_SPUpper;         
  452.     void    (*tc_Switch)();         
  453.     void    (*tc_Launch)();         
  454.     struct  List tc_MemEntry;         
  455.     APTR    tc_UserData;         
  456. };
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469.  
  470.  
  471.  
  472.  
  473.  
  474.  
  475.  
  476.  
  477.  
  478.  
  479.  
  480.  
  481.  
  482.  
  483.  
  484.  
  485.  
  486.  
  487.  
  488.  
  489.  
  490.  
  491.  
  492.  
  493.  
  494.  
  495.  
  496.  
  497.  
  498.  
  499. # 29 "dinclude:amiga20/exec/execbase.h" 3
  500.  
  501. # 29 "dinclude:amiga20/exec/execbase.h" 3
  502.  
  503.  
  504.  
  505.  
  506.  
  507.  
  508.  
  509. struct ExecBase {
  510.     struct Library LibNode;  
  511.  
  512.  
  513.  
  514.     UWORD    SoftVer;     
  515.     WORD    LowMemChkSum;     
  516.     ULONG    ChkBase;     
  517.     APTR    ColdCapture;     
  518.     APTR    CoolCapture;     
  519.     APTR    WarmCapture;     
  520.     APTR    SysStkUpper;     
  521.     APTR    SysStkLower;     
  522.     ULONG    MaxLocMem;     
  523.     APTR    DebugEntry;     
  524.     APTR    DebugData;     
  525.     APTR    AlertData;     
  526.     APTR    MaxExtMem;     
  527.  
  528.     UWORD    ChkSum;     
  529.  
  530.  
  531.  
  532.     struct    IntVector IntVects[16];
  533.  
  534.  
  535.  
  536.     struct    Task *ThisTask;  
  537.  
  538.     ULONG    IdleCount;     
  539.     ULONG    DispCount;     
  540.     UWORD    Quantum;     
  541.     UWORD    Elapsed;     
  542.     UWORD    SysFlags;     
  543.     BYTE    IDNestCnt;     
  544.     BYTE    TDNestCnt;     
  545.  
  546.     UWORD    AttnFlags;     
  547.  
  548.     UWORD    AttnResched;     
  549.     APTR    ResModules;     
  550.     APTR    TaskTrapCode;
  551.     APTR    TaskExceptCode;
  552.     APTR    TaskExitCode;
  553.     ULONG    TaskSigAlloc;
  554.     UWORD    TaskTrapAlloc;
  555.  
  556.  
  557.  
  558.  
  559.     struct    List MemList;
  560.     struct    List ResourceList;
  561.     struct    List DeviceList;
  562.     struct    List IntrList;
  563.     struct    List LibList;
  564.     struct    List PortList;
  565.     struct    List TaskReady;
  566.     struct    List TaskWait;
  567.  
  568.     struct    SoftIntList SoftInts[5];
  569.  
  570.  
  571.  
  572.     LONG    LastAlert[4];
  573.  
  574.     
  575.  
  576.  
  577.  
  578.  
  579.  
  580.  
  581.  
  582.  
  583.  
  584.     UBYTE    VBlankFrequency;     
  585.     UBYTE    PowerSupplyFrequency;     
  586.  
  587.     struct    List SemaphoreList;
  588.  
  589.     
  590.  
  591.  
  592.  
  593.  
  594.  
  595.     APTR    KickMemPtr;     
  596.     APTR    KickTagPtr;     
  597.     APTR    KickCheckSum;     
  598.  
  599.  
  600.  
  601.     UWORD    ex_Pad0;
  602.     ULONG    ex_Reserved0;
  603.     APTR    ex_RamLibPrivate;
  604.     
  605.  
  606.  
  607.  
  608.  
  609.     ULONG    ex_EClockFrequency;     
  610.     ULONG    ex_CacheControl;     
  611.     ULONG    ex_TaskID;         
  612.  
  613.     ULONG    ex_PuddleSize;
  614.     ULONG    ex_PoolThreshold;
  615.     struct    MinList ex_PublicPool;
  616.  
  617.     APTR    ex_MMULock;         
  618.  
  619.     UBYTE    ex_Reserved[12];
  620. };
  621.  
  622.  
  623.  
  624.  
  625.  
  626.  
  627.  
  628.  
  629.  
  630.  
  631.  
  632.  
  633.  
  634.  
  635.  
  636.  
  637.  
  638.  
  639.  
  640.  
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660. # 5 "local/defs.h" 2
  661.  
  662. # 5 "local/defs.h" 2
  663.  
  664. # 1 "dinclude:amiga20/exec/nodes.h" 3
  665.  
  666.  
  667.  
  668.  
  669.  
  670.  
  671.  
  672.  
  673.  
  674.  
  675.  
  676.  
  677.  
  678.  
  679.  
  680.  
  681.  
  682.  
  683.  
  684.  
  685.  
  686.  
  687.  
  688.  
  689.  
  690.  
  691.  
  692.  
  693.  
  694.  
  695.  
  696.  
  697.  
  698.  
  699.  
  700.  
  701.  
  702.  
  703.  
  704.  
  705.  
  706.  
  707.  
  708.  
  709.  
  710.  
  711.  
  712.  
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720.  
  721.  
  722.  
  723.  
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.  
  731.  
  732.  
  733.  
  734.  
  735. # 6 "local/defs.h" 2
  736.  
  737. # 6 "local/defs.h" 2
  738.  
  739. # 1 "dinclude:amiga20/exec/lists.h" 3
  740.  
  741.  
  742.  
  743.  
  744.  
  745.  
  746.  
  747.  
  748.  
  749.  
  750.  
  751.  
  752.  
  753.  
  754.  
  755.  
  756.  
  757.  
  758.  
  759.  
  760.  
  761.  
  762.  
  763.  
  764.  
  765.  
  766.  
  767.  
  768.  
  769.  
  770.  
  771.  
  772.  
  773.  
  774.  
  775.  
  776.  
  777.  
  778.  
  779.  
  780.  
  781.  
  782.  
  783.  
  784.  
  785.  
  786.  
  787.  
  788.  
  789.  
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.  
  797.  
  798.  
  799.  
  800. # 7 "local/defs.h" 2
  801.  
  802. # 7 "local/defs.h" 2
  803.  
  804. # 1 "dinclude:amiga20/exec/libraries.h" 3
  805.  
  806.  
  807.  
  808.  
  809.  
  810.  
  811.  
  812.  
  813.  
  814.  
  815.  
  816.  
  817.  
  818.  
  819.  
  820.  
  821.  
  822.  
  823.  
  824.  
  825.  
  826.  
  827.  
  828.  
  829.  
  830.  
  831.  
  832.  
  833.  
  834.  
  835.  
  836.  
  837.  
  838.  
  839.  
  840.  
  841.  
  842.  
  843.  
  844.  
  845.  
  846.  
  847.  
  848.  
  849.  
  850.  
  851.  
  852.  
  853.  
  854.  
  855.  
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862.  
  863.  
  864.  
  865.  
  866.  
  867.  
  868.  
  869.  
  870.  
  871.  
  872.  
  873. # 8 "local/defs.h" 2
  874.  
  875. # 8 "local/defs.h" 2
  876.  
  877. # 1 "dinclude:amiga20/exec/ports.h" 3
  878.  
  879.  
  880.  
  881.  
  882.  
  883.  
  884.  
  885.  
  886.  
  887.  
  888.  
  889.  
  890.  
  891.  
  892.  
  893.  
  894.  
  895.  
  896.  
  897.  
  898.  
  899.  
  900.  
  901.  
  902.  
  903.  
  904.  
  905.  
  906.  
  907. struct MsgPort {
  908.     struct  Node mp_Node;
  909.     UBYTE   mp_Flags;
  910.     UBYTE   mp_SigBit;         
  911.     void   *mp_SigTask;         
  912.     struct  List mp_MsgList;     
  913. };
  914.  
  915.  
  916.  
  917.  
  918.  
  919.  
  920.  
  921.  
  922.  
  923.  
  924.  
  925.  
  926. struct Message {
  927.     struct  Node mn_Node;
  928.     struct  MsgPort *mn_ReplyPort;   
  929.     UWORD   mn_Length;             
  930.                      
  931.                      
  932. };
  933.  
  934.  
  935.  
  936. # 9 "local/defs.h" 2
  937.  
  938. # 9 "local/defs.h" 2
  939.  
  940. # 1 "dinclude:amiga20/exec/memory.h" 3
  941.  
  942.  
  943.  
  944.  
  945.  
  946.  
  947.  
  948.  
  949.  
  950.  
  951.  
  952.  
  953.  
  954.  
  955.  
  956.  
  957.  
  958.  
  959.  
  960.  
  961.  
  962. struct    MemChunk {
  963.     struct  MemChunk *mc_Next;     
  964.     ULONG   mc_Bytes;         
  965. };
  966.  
  967.  
  968.  
  969.  
  970. struct    MemHeader {
  971.     struct  Node mh_Node;
  972.     UWORD   mh_Attributes;     
  973.     struct  MemChunk *mh_First;  
  974.     APTR    mh_Lower;         
  975.     APTR    mh_Upper;         
  976.     ULONG   mh_Free;         
  977. };
  978.  
  979.  
  980.  
  981.  
  982. struct    MemEntry {
  983. union {
  984.     ULONG   meu_Reqs;         
  985.     APTR    meu_Addr;         
  986.     } me_Un;
  987.     ULONG   me_Length;         
  988. };
  989.  
  990.  
  991.  
  992.  
  993.  
  994.  
  995.  
  996.  
  997.  
  998. struct    MemList {
  999.     struct  Node ml_Node;
  1000.     UWORD   ml_NumEntries;     
  1001.     struct  MemEntry ml_ME[1];     
  1002. };
  1003.  
  1004.  
  1005.  
  1006.  
  1007.  
  1008.  
  1009.  
  1010.  
  1011.  
  1012.  
  1013.  
  1014.  
  1015.  
  1016.  
  1017.  
  1018.  
  1019.  
  1020.  
  1021.  
  1022.  
  1023.  
  1024.  
  1025.  
  1026.  
  1027. # 10 "local/defs.h" 2
  1028.  
  1029. # 10 "local/defs.h" 2
  1030.  
  1031. # 1 "dinclude:amiga20/exec/execbase.h" 3
  1032.  
  1033.  
  1034.  
  1035.  
  1036.  
  1037.  
  1038.  
  1039.  
  1040.  
  1041.  
  1042.  
  1043.  
  1044.  
  1045.  
  1046.  
  1047.  
  1048.  
  1049.  
  1050.  
  1051.  
  1052.  
  1053.  
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060.  
  1061.  
  1062.  
  1063.  
  1064.  
  1065.  
  1066.  
  1067.  
  1068.  
  1069.  
  1070.  
  1071.  
  1072.  
  1073.  
  1074.  
  1075.  
  1076.  
  1077.  
  1078.  
  1079.  
  1080.  
  1081.  
  1082.  
  1083.  
  1084.  
  1085.  
  1086.  
  1087.  
  1088.  
  1089.  
  1090.  
  1091.  
  1092.  
  1093.  
  1094.  
  1095.  
  1096.  
  1097.  
  1098.  
  1099.  
  1100.  
  1101.  
  1102.  
  1103.  
  1104.  
  1105.  
  1106.  
  1107.  
  1108.  
  1109.  
  1110.  
  1111.  
  1112.  
  1113.  
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119.  
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126.  
  1127.  
  1128.  
  1129.  
  1130.  
  1131.  
  1132.  
  1133.  
  1134.  
  1135.  
  1136.  
  1137.  
  1138.  
  1139.  
  1140.  
  1141.  
  1142.  
  1143.  
  1144.  
  1145.  
  1146.  
  1147.  
  1148.  
  1149.  
  1150.  
  1151.  
  1152.  
  1153.  
  1154.  
  1155.  
  1156.  
  1157.  
  1158.  
  1159.  
  1160.  
  1161.  
  1162.  
  1163.  
  1164.  
  1165.  
  1166.  
  1167.  
  1168.  
  1169.  
  1170.  
  1171.  
  1172.  
  1173.  
  1174.  
  1175.  
  1176.  
  1177.  
  1178.  
  1179.  
  1180.  
  1181.  
  1182.  
  1183.  
  1184.  
  1185.  
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192.  
  1193.  
  1194.  
  1195.  
  1196.  
  1197.  
  1198.  
  1199.  
  1200.  
  1201.  
  1202.  
  1203.  
  1204.  
  1205.  
  1206.  
  1207.  
  1208.  
  1209.  
  1210.  
  1211.  
  1212.  
  1213.  
  1214.  
  1215.  
  1216.  
  1217.  
  1218. # 11 "local/defs.h" 2
  1219.  
  1220. # 11 "local/defs.h" 2
  1221.  
  1222. # 1 "dinclude:amiga20/utility/tagitem.h" 3
  1223.  
  1224.  
  1225.  
  1226.  
  1227.  
  1228.  
  1229.  
  1230.  
  1231.  
  1232.  
  1233.  
  1234.  
  1235.  
  1236.  
  1237.  
  1238.  
  1239.  
  1240.  
  1241.  
  1242.  
  1243.  
  1244.  
  1245.  
  1246.  
  1247.  
  1248.  
  1249.  
  1250.  
  1251.  
  1252. typedef ULONG    Tag;
  1253.  
  1254. struct TagItem    {
  1255.     Tag        ti_Tag;
  1256.     ULONG    ti_Data;
  1257. };
  1258.  
  1259.  
  1260.  
  1261.  
  1262.  
  1263.  
  1264.  
  1265.  
  1266.  
  1267.  
  1268.  
  1269.  
  1270.  
  1271.  
  1272.  
  1273.  
  1274.  
  1275.  
  1276.  
  1277.  
  1278.  
  1279.  
  1280.  
  1281. # 12 "local/defs.h" 2
  1282.  
  1283. # 12 "local/defs.h" 2
  1284.  
  1285. # 1 "dinclude:amiga20/hardware/custom.h" 3
  1286.  
  1287.  
  1288.  
  1289.  
  1290.  
  1291.  
  1292.  
  1293.  
  1294.  
  1295.  
  1296.  
  1297.  
  1298.  
  1299.  
  1300.  
  1301.  
  1302.  
  1303.  
  1304.  
  1305.  
  1306.  
  1307.  
  1308.  
  1309.  
  1310.  
  1311.  
  1312. struct Custom {
  1313.     UWORD   bltddat;
  1314.     UWORD   dmaconr;
  1315.     UWORD   vposr;
  1316.     UWORD   vhposr;
  1317.     UWORD   dskdatr;
  1318.     UWORD   joy0dat;
  1319.     UWORD   joy1dat;
  1320.     UWORD   clxdat;
  1321.     UWORD   adkconr;
  1322.     UWORD   pot0dat;
  1323.     UWORD   pot1dat;
  1324.     UWORD   potinp;
  1325.     UWORD   serdatr;
  1326.     UWORD   dskbytr;
  1327.     UWORD   intenar;
  1328.     UWORD   intreqr;
  1329.     APTR    dskpt;
  1330.     UWORD   dsklen;
  1331.     UWORD   dskdat;
  1332.     UWORD   refptr;
  1333.     UWORD   vposw;
  1334.     UWORD   vhposw;
  1335.     UWORD   copcon;
  1336.     UWORD   serdat;
  1337.     UWORD   serper;
  1338.     UWORD   potgo;
  1339.     UWORD   joytest;
  1340.     UWORD   strequ;
  1341.     UWORD   strvbl;
  1342.     UWORD   strhor;
  1343.     UWORD   strlong;
  1344.     UWORD   bltcon0;
  1345.     UWORD   bltcon1;
  1346.     UWORD   bltafwm;
  1347.     UWORD   bltalwm;
  1348.     APTR    bltcpt;
  1349.     APTR    bltbpt;
  1350.     APTR    bltapt;
  1351.     APTR    bltdpt;
  1352.     UWORD   bltsize;
  1353.     UBYTE   pad2d;
  1354.     UBYTE   bltcon0l;     
  1355.     UWORD   bltsizv;
  1356.     UWORD   bltsizh;     
  1357.     UWORD   bltcmod;
  1358.     UWORD   bltbmod;
  1359.     UWORD   bltamod;
  1360.     UWORD   bltdmod;
  1361.     UWORD   pad34[4];
  1362.     UWORD   bltcdat;
  1363.     UWORD   bltbdat;
  1364.     UWORD   bltadat;
  1365.     UWORD   pad3b[3];
  1366.     UWORD deniseid;    
  1367.     UWORD   dsksync;
  1368.     ULONG   cop1lc;
  1369.     ULONG   cop2lc;
  1370.     UWORD   copjmp1;
  1371.     UWORD   copjmp2;
  1372.     UWORD   copins;
  1373.     UWORD   diwstrt;
  1374.     UWORD   diwstop;
  1375.     UWORD   ddfstrt;
  1376.     UWORD   ddfstop;
  1377.     UWORD   dmacon;
  1378.     UWORD   clxcon;
  1379.     UWORD   intena;
  1380.     UWORD   intreq;
  1381.     UWORD   adkcon;
  1382.     struct  AudChannel {
  1383.       UWORD *ac_ptr;  
  1384.       UWORD ac_len;     
  1385.       UWORD ac_per;     
  1386.       UWORD ac_vol;     
  1387.       UWORD ac_dat;     
  1388.       UWORD ac_pad[2];     
  1389.     } aud[4];
  1390.     APTR    bplpt[8];
  1391.     UWORD   bplcon0;
  1392.     UWORD   bplcon1;
  1393.     UWORD   bplcon2;
  1394.     UWORD   bplcon3;
  1395.     UWORD   bpl1mod;
  1396.     UWORD   bpl2mod;
  1397.     UWORD   bplhmod;
  1398.     UWORD   pad86[1];
  1399.     UWORD   bpldat[8];
  1400.     APTR    sprpt[8];
  1401.     struct  SpriteDef {
  1402.       UWORD pos;
  1403.       UWORD ctl;
  1404.       UWORD dataa;
  1405.       UWORD datab;
  1406.     } spr[8];
  1407.     UWORD   color[32];
  1408.     UWORD htotal;
  1409.     UWORD hsstop;
  1410.     UWORD hbstrt;
  1411.     UWORD hbstop;
  1412.     UWORD vtotal;
  1413.     UWORD vsstop;
  1414.     UWORD vbstrt;
  1415.     UWORD vbstop;
  1416.     UWORD sprhstrt;
  1417.     UWORD sprhstop;
  1418.     UWORD bplhstrt;
  1419.     UWORD bplhstop;
  1420.     UWORD hhposw;
  1421.     UWORD hhposr;
  1422.     UWORD beamcon0;
  1423.     UWORD hsstrt;
  1424.     UWORD vsstrt;
  1425.     UWORD hcenter;
  1426.     UWORD   diwhigh;     
  1427. };
  1428.  
  1429.  
  1430.  
  1431.  
  1432.  
  1433.  
  1434.  
  1435.  
  1436.  
  1437.  
  1438.  
  1439.  
  1440.  
  1441.  
  1442.  
  1443.  
  1444.  
  1445.  
  1446.  
  1447.  
  1448.  
  1449.  
  1450.  
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456.  
  1457.  
  1458.  
  1459.  
  1460.  
  1461.  
  1462.  
  1463.  
  1464.  
  1465.  
  1466.  
  1467. # 13 "local/defs.h" 2
  1468.  
  1469. # 13 "local/defs.h" 2
  1470.  
  1471. # 1 "dinclude:amiga20/hardware/dmabits.h" 3
  1472.  
  1473.  
  1474.  
  1475.  
  1476.  
  1477.  
  1478.  
  1479.  
  1480.  
  1481.  
  1482.  
  1483.  
  1484.  
  1485.  
  1486.  
  1487.  
  1488.  
  1489.  
  1490.  
  1491.  
  1492.  
  1493.  
  1494.  
  1495.  
  1496.  
  1497.  
  1498.  
  1499.  
  1500.  
  1501.  
  1502.  
  1503.  
  1504.  
  1505.  
  1506.  
  1507.  
  1508.  
  1509.  
  1510.  
  1511.  
  1512.  
  1513.  
  1514.  
  1515.  
  1516.  
  1517.  
  1518.  
  1519.  
  1520.  
  1521.  
  1522.  
  1523.  
  1524. # 14 "local/defs.h" 2
  1525.  
  1526. # 14 "local/defs.h" 2
  1527.  
  1528. # 1 "dinclude:amiga20/intuition/intuitionbase.h" 3
  1529.  
  1530.  
  1531.  
  1532.  
  1533.  
  1534.  
  1535.  
  1536.  
  1537.  
  1538.  
  1539.  
  1540.  
  1541.  
  1542.  
  1543.  
  1544.  
  1545.  
  1546.  
  1547.  
  1548.  
  1549.  
  1550.  
  1551.  
  1552.  
  1553. # 1 "dinclude:amiga20/intuition/intuition.h" 4
  1554.  
  1555.  
  1556.  
  1557.  
  1558.  
  1559.  
  1560.  
  1561.  
  1562.  
  1563.  
  1564.  
  1565.  
  1566.  
  1567.  
  1568.  
  1569.  
  1570.  
  1571.  
  1572.  
  1573.  
  1574. # 1 "dinclude:amiga20/graphics/gfx.h" 5
  1575.  
  1576.  
  1577.  
  1578.  
  1579.  
  1580.  
  1581.  
  1582.  
  1583.  
  1584.  
  1585.  
  1586.  
  1587.  
  1588.  
  1589.  
  1590.  
  1591.  
  1592.  
  1593.  
  1594.  
  1595.  
  1596.  
  1597.  
  1598.  
  1599.  
  1600.  
  1601.  
  1602.  
  1603. struct Rectangle
  1604. {
  1605.     WORD   MinX,MinY;
  1606.     WORD   MaxX,MaxY;
  1607. };
  1608.  
  1609. struct Rect32
  1610. {
  1611.     LONG    MinX,MinY;
  1612.     LONG    MaxX,MaxY;
  1613. };
  1614.  
  1615. typedef struct tPoint
  1616. {
  1617.     WORD x,y;
  1618. } Point;
  1619.  
  1620. typedef UBYTE *PLANEPTR;
  1621.  
  1622. struct BitMap
  1623. {
  1624.     UWORD   BytesPerRow;
  1625.     UWORD   Rows;
  1626.     UBYTE   Flags;
  1627.     UBYTE   Depth;
  1628.     UWORD   pad;
  1629.     PLANEPTR Planes[8];
  1630. };
  1631.  
  1632.  
  1633.  
  1634.  
  1635.  
  1636. # 21 "dinclude:amiga20/intuition/intuition.h" 4
  1637.  
  1638. # 21 "dinclude:amiga20/intuition/intuition.h" 4
  1639.  
  1640.  
  1641.  
  1642.  
  1643. # 1 "dinclude:amiga20/graphics/clip.h" 5
  1644.  
  1645.  
  1646.  
  1647.  
  1648.  
  1649.  
  1650.  
  1651.  
  1652.  
  1653.  
  1654.  
  1655.  
  1656.  
  1657.  
  1658.  
  1659.  
  1660.  
  1661.  
  1662.  
  1663.  
  1664.  
  1665.  
  1666.  
  1667. # 1 "dinclude:amiga20/exec/semaphores.h" 6
  1668.  
  1669.  
  1670.  
  1671.  
  1672.  
  1673.  
  1674.  
  1675.  
  1676.  
  1677.  
  1678.  
  1679.  
  1680.  
  1681.  
  1682.  
  1683.  
  1684.  
  1685.  
  1686.  
  1687.  
  1688.  
  1689.  
  1690.  
  1691.  
  1692.  
  1693.  
  1694.  
  1695.  
  1696.  
  1697.  
  1698.  
  1699.  
  1700.  
  1701.  
  1702. struct SemaphoreRequest {
  1703.     struct  MinNode sr_Link;
  1704.     struct  Task *sr_Waiter;
  1705. };
  1706.  
  1707.  
  1708. struct SignalSemaphore {
  1709.     struct  Node ss_Link;
  1710.     WORD    ss_NestCount;
  1711.     struct  MinList ss_WaitQueue;
  1712.     struct  SemaphoreRequest ss_MultipleLink;
  1713.     struct  Task *ss_Owner;
  1714.     WORD    ss_QueueCount;
  1715. };
  1716.  
  1717.  
  1718.  
  1719.  
  1720.  
  1721. struct Semaphore {
  1722.     struct MsgPort sm_MsgPort;
  1723.     WORD   sm_Bids;
  1724. };
  1725.  
  1726.  
  1727.  
  1728.  
  1729.  
  1730.  
  1731. # 24 "dinclude:amiga20/graphics/clip.h" 5
  1732.  
  1733. # 24 "dinclude:amiga20/graphics/clip.h" 5
  1734.  
  1735.  
  1736.  
  1737. # 1 "dinclude:amiga20/utility/hooks.h" 6
  1738.  
  1739.  
  1740.  
  1741.  
  1742.  
  1743.  
  1744.  
  1745.  
  1746.  
  1747.  
  1748.  
  1749.  
  1750.  
  1751.  
  1752.  
  1753.  
  1754.  
  1755.  
  1756.  
  1757.  
  1758.  
  1759.  
  1760.  
  1761. struct Hook    {
  1762.     struct MinNode    h_MinNode;
  1763.     ULONG        (*h_Entry)();     
  1764.     ULONG        (*h_SubEntry)(); 
  1765.     void        *h_Data;     
  1766. };
  1767.  
  1768.  
  1769.  
  1770.  
  1771.  
  1772.  
  1773.  
  1774.  
  1775.  
  1776.  
  1777.  
  1778.  
  1779.  
  1780.  
  1781.  
  1782.  
  1783.  
  1784.  
  1785.  
  1786.  
  1787.  
  1788.  
  1789.  
  1790.  
  1791.  
  1792.  
  1793.  
  1794.  
  1795.  
  1796.  
  1797.  
  1798.  
  1799.  
  1800.  
  1801.  
  1802.  
  1803.  
  1804.  
  1805.  
  1806.  
  1807.  
  1808.  
  1809.  
  1810.  
  1811.  
  1812.  
  1813.  
  1814.  
  1815.  
  1816.  
  1817.  
  1818.  
  1819.  
  1820.  
  1821.  
  1822.  
  1823.  
  1824.  
  1825.  
  1826.  
  1827.  
  1828.  
  1829. # 27 "dinclude:amiga20/graphics/clip.h" 5
  1830.  
  1831. # 27 "dinclude:amiga20/graphics/clip.h" 5
  1832.  
  1833.  
  1834.  
  1835.  
  1836.  
  1837.  
  1838.  
  1839. struct Layer
  1840. {
  1841.     struct  Layer *front,*back;
  1842.     struct  ClipRect    *ClipRect;   
  1843.     struct  RastPort    *rp;
  1844.     struct  Rectangle    bounds;
  1845.     UBYTE   reserved[4];
  1846.     UWORD   priority;             
  1847.     UWORD   Flags;             
  1848.     struct  BitMap *SuperBitMap;
  1849.     struct  ClipRect *SuperClipRect;  
  1850.                    
  1851.     APTR    Window;           
  1852.     WORD   Scroll_X,Scroll_Y;
  1853.     struct  ClipRect *cr,*cr2,*crnew;     
  1854.     struct  ClipRect *SuperSaveClipRects;  
  1855.     struct  ClipRect *_cliprects;     
  1856.     struct  Layer_Info    *LayerInfo;     
  1857.     struct  SignalSemaphore Lock;
  1858.     struct  Hook *BackFill;
  1859.     ULONG   reserved1;
  1860.     struct  Region *ClipRegion;
  1861.     struct  Region *saveClipRects;     
  1862.     WORD    Width,Height;         
  1863.     UBYTE   reserved2[18];
  1864.      
  1865.     struct  Region  *DamageList;    
  1866.  
  1867. };
  1868.  
  1869. struct ClipRect
  1870. {
  1871.     struct  ClipRect *Next;         
  1872.     struct  ClipRect *prev;         
  1873.     struct  Layer   *lobs;         
  1874.     struct  BitMap  *BitMap;
  1875.     struct  Rectangle    bounds;      
  1876.     struct  ClipRect *_p1,*_p2;      
  1877.     LONG    reserved;             
  1878.  
  1879.  
  1880.  
  1881. };
  1882.  
  1883.  
  1884.  
  1885.  
  1886.  
  1887.  
  1888.  
  1889.  
  1890.  
  1891.  
  1892.  
  1893.  
  1894.  
  1895. # 25 "dinclude:amiga20/intuition/intuition.h" 4
  1896.  
  1897. # 25 "dinclude:amiga20/intuition/intuition.h" 4
  1898.  
  1899.  
  1900.  
  1901.  
  1902. # 1 "dinclude:amiga20/graphics/view.h" 5
  1903.  
  1904.  
  1905.  
  1906.  
  1907.  
  1908.  
  1909.  
  1910.  
  1911.  
  1912.  
  1913.  
  1914.  
  1915.  
  1916.  
  1917.  
  1918.  
  1919.  
  1920.  
  1921.  
  1922.  
  1923.  
  1924.  
  1925.  
  1926.  
  1927.  
  1928.  
  1929. # 1 "dinclude:amiga20/graphics/copper.h" 6
  1930.  
  1931.  
  1932.  
  1933.  
  1934.  
  1935.  
  1936.  
  1937.  
  1938.  
  1939.  
  1940.  
  1941.  
  1942.  
  1943.  
  1944.  
  1945.  
  1946.  
  1947.  
  1948.  
  1949.  
  1950.  
  1951.  
  1952.  
  1953.  
  1954.  
  1955. struct CopIns
  1956. {
  1957.     WORD   OpCode;  
  1958.     union
  1959.     {
  1960.     struct CopList *nxtlist;
  1961.     struct
  1962.     {
  1963.    union
  1964.    {
  1965.    WORD   VWaitPos;        
  1966.    WORD   DestAddr;        
  1967.    } u1;
  1968.    union
  1969.    {
  1970.    WORD   HWaitPos;        
  1971.    WORD   DestData;        
  1972.    } u2;
  1973.     } u4;
  1974.     } u3;
  1975. };
  1976.  
  1977.  
  1978.  
  1979.  
  1980.  
  1981.  
  1982.  
  1983.  
  1984.  
  1985. struct cprlist
  1986. {
  1987.     struct cprlist *Next;
  1988.     UWORD   *start;         
  1989.     WORD   MaxCount;        
  1990. };
  1991.  
  1992. struct CopList
  1993. {
  1994.     struct  CopList *Next;   
  1995.     struct  CopList *_CopList;     
  1996.     struct  ViewPort *_ViewPort;     
  1997.     struct  CopIns *CopIns;  
  1998.     struct  CopIns *CopPtr;  
  1999.     UWORD   *CopLStart;      
  2000.     UWORD   *CopSStart;      
  2001.     WORD   Count;        
  2002.     WORD   MaxCount;        
  2003.     WORD   DyOffset;        
  2004.  
  2005.  
  2006.  
  2007.  
  2008.  
  2009.  
  2010. };
  2011.  
  2012. struct UCopList
  2013. {
  2014.     struct UCopList *Next;
  2015.     struct CopList  *FirstCopList;  
  2016.     struct CopList  *CopList;        
  2017. };
  2018.  
  2019.  
  2020.  
  2021. struct copinit
  2022. {
  2023.     UWORD vsync_hblank[2];
  2024.     UWORD diwstart[4];
  2025.     UWORD diagstrt[4];         
  2026.     UWORD sprstrtup[(2*8*2)];
  2027.     UWORD wait14[2];
  2028.     UWORD norm_hblank[2];
  2029.     UWORD genloc[4];
  2030.     UWORD jump[(2*2)];
  2031.     UWORD wait_forever[2];
  2032.     UWORD   sprstop[4];
  2033. };
  2034.  
  2035.  
  2036.  
  2037. # 27 "dinclude:amiga20/graphics/view.h" 5
  2038.  
  2039. # 27 "dinclude:amiga20/graphics/view.h" 5
  2040.  
  2041.  
  2042.  
  2043.  
  2044. # 1 "dinclude:amiga20/graphics/gfxnodes.h" 6
  2045.  
  2046.  
  2047.  
  2048.  
  2049.  
  2050.  
  2051.  
  2052.  
  2053.  
  2054.  
  2055.  
  2056.  
  2057.  
  2058.  
  2059.  
  2060.  
  2061.  
  2062.  
  2063. struct    ExtendedNode    {
  2064. struct    Node    *xln_Succ;
  2065. struct    Node    *xln_Pred;
  2066. UBYTE    xln_Type;
  2067. BYTE    xln_Pri;
  2068. char    *xln_Name;
  2069. UBYTE    xln_Subsystem;
  2070. UBYTE    xln_Subtype;
  2071. LONG    xln_Library;
  2072. LONG    (*xln_Init)();
  2073. };
  2074.  
  2075.  
  2076.  
  2077.  
  2078.  
  2079.  
  2080.  
  2081.  
  2082.  
  2083.  
  2084. # 31 "dinclude:amiga20/graphics/view.h" 5
  2085.  
  2086. # 31 "dinclude:amiga20/graphics/view.h" 5
  2087.  
  2088.  
  2089.  
  2090.  
  2091. # 1 "dinclude:amiga20/graphics/monitor.h" 6
  2092.  
  2093.  
  2094.  
  2095.  
  2096.  
  2097.  
  2098.  
  2099.  
  2100.  
  2101.  
  2102.  
  2103.  
  2104.  
  2105.  
  2106.  
  2107.  
  2108.  
  2109.  
  2110.  
  2111.  
  2112.  
  2113.  
  2114.  
  2115.  
  2116.  
  2117.  
  2118. struct    MonitorSpec
  2119. {
  2120.     struct    ExtendedNode    ms_Node;
  2121.     UWORD    ms_Flags;
  2122.     LONG    ratioh;
  2123.     LONG    ratiov;
  2124.     UWORD    total_rows;
  2125.     UWORD    total_colorclocks;
  2126.     UWORD    DeniseMaxDisplayColumn;
  2127.     UWORD    BeamCon0;
  2128.     UWORD    min_row;
  2129.     struct    SpecialMonitor    *ms_Special;
  2130.     UWORD    ms_OpenCount;
  2131.     LONG    (*ms_transform)();
  2132.     LONG    (*ms_translate)();
  2133.     LONG    (*ms_scale)();
  2134.     UWORD    ms_xoffset;
  2135.     UWORD    ms_yoffset;
  2136.     struct    Rectangle    ms_LegalView;
  2137.     LONG    (*ms_maxoscan)();     
  2138.     LONG    (*ms_videoscan)();     
  2139.     UWORD    DeniseMinDisplayColumn;
  2140.     ULONG    DisplayCompatible;
  2141.     struct    List DisplayInfoDataBase;
  2142.     struct    SignalSemaphore DisplayInfoDataBaseSemaphore;
  2143.     ULONG    ms_reserved00;
  2144.     ULONG    ms_reserved01;
  2145. };
  2146.  
  2147.  
  2148.  
  2149.  
  2150.  
  2151.  
  2152.  
  2153.  
  2154.  
  2155.  
  2156.  
  2157.  
  2158.  
  2159.  
  2160.  
  2161.  
  2162.  
  2163.  
  2164.  
  2165.  
  2166.  
  2167.  
  2168.  
  2169.  
  2170.  
  2171.  
  2172.  
  2173.  
  2174.  
  2175.  
  2176.  
  2177.  
  2178.  
  2179.  
  2180.  
  2181.  
  2182.  
  2183.  
  2184.  
  2185.  
  2186.  
  2187.  
  2188.  
  2189.  
  2190.  
  2191.  
  2192.  
  2193.  
  2194.  
  2195.  
  2196.  
  2197.  
  2198.  
  2199.  
  2200.  
  2201.  
  2202.  
  2203.  
  2204.  
  2205.  
  2206.  
  2207.  
  2208.  
  2209.  
  2210.  
  2211.  
  2212.  
  2213.  
  2214.  
  2215.  
  2216.  
  2217.  
  2218.  
  2219.  
  2220.  
  2221.  
  2222.  
  2223.  
  2224.  
  2225.  
  2226.  
  2227. struct    AnalogSignalInterval
  2228. {
  2229.     UWORD    asi_Start;
  2230.     UWORD    asi_Stop;
  2231. };
  2232.  
  2233. struct    SpecialMonitor
  2234. {
  2235.     struct    ExtendedNode    spm_Node;
  2236.     UWORD    spm_Flags;
  2237.     int    (*do_monitor)();
  2238.     int    (*reserved1)();
  2239.     int    (*reserved2)();
  2240.     int    (*reserved3)();
  2241.     struct    AnalogSignalInterval    hblank;
  2242.     struct    AnalogSignalInterval    vblank;
  2243.     struct    AnalogSignalInterval    hsync;
  2244.     struct    AnalogSignalInterval    vsync;
  2245. };
  2246.  
  2247.  
  2248.  
  2249. # 35 "dinclude:amiga20/graphics/view.h" 5
  2250.  
  2251. # 35 "dinclude:amiga20/graphics/view.h" 5
  2252.  
  2253.  
  2254.  
  2255.  
  2256.  
  2257.  
  2258. struct ViewPort
  2259. {
  2260.    struct   ViewPort *Next;
  2261.    struct   ColorMap  *ColorMap;     
  2262.            
  2263.    struct   CopList  *DspIns;         
  2264.    struct   CopList  *SprIns;         
  2265.    struct   CopList  *ClrIns;         
  2266.    struct   UCopList *UCopIns;         
  2267.    WORD    DWidth,DHeight;
  2268.    WORD    DxOffset,DyOffset;
  2269.    UWORD    Modes;
  2270.    UBYTE    SpritePriorities;         
  2271.    UBYTE    ExtendedModes;
  2272.    struct   RasInfo *RasInfo;
  2273. };
  2274.  
  2275. struct View
  2276. {
  2277.    struct ViewPort *ViewPort;
  2278.    struct cprlist *LOFCprList;      
  2279.    struct cprlist *SHFCprList;      
  2280.    WORD DyOffset,DxOffset;    
  2281.                    
  2282.    UWORD   Modes;           
  2283. };
  2284.  
  2285.  
  2286.  
  2287. struct ViewExtra
  2288. {
  2289.     struct ExtendedNode n;
  2290.     struct View *View;      
  2291.     struct MonitorSpec *Monitor;  
  2292. };
  2293.  
  2294.  
  2295.  
  2296. struct ViewPortExtra
  2297. {
  2298.     struct ExtendedNode n;
  2299.     struct ViewPort *ViewPort;     
  2300.     struct Rectangle DisplayClip;   
  2301. };
  2302.  
  2303.  
  2304.  
  2305.  
  2306.  
  2307.  
  2308.  
  2309.  
  2310.  
  2311.  
  2312.  
  2313.  
  2314.  
  2315.  
  2316.  
  2317.  
  2318.  
  2319.  
  2320.  
  2321.  
  2322.  
  2323.  
  2324. struct RasInfo     
  2325. {
  2326.    struct   RasInfo *Next;         
  2327.    struct   BitMap *BitMap;
  2328.    WORD    RxOffset,RyOffset;        
  2329. };
  2330.  
  2331. struct ColorMap
  2332. {
  2333.     UBYTE    Flags;
  2334.     UBYTE    Type;
  2335.     UWORD    Count;
  2336.     APTR    ColorTable;
  2337.     struct    ViewPortExtra *cm_vpe;
  2338.     UWORD    *TransparencyBits;
  2339.     UBYTE    TransparencyPlane;
  2340.     UBYTE    reserved1;
  2341.     UWORD    reserved2;
  2342.     struct    ViewPort *cm_vp;
  2343.     APTR    NormalDisplayInfo;
  2344.     APTR    CoerceDisplayInfo;
  2345.     struct    TagItem *cm_batch_items;
  2346.     ULONG    VPModeID;
  2347. };
  2348.  
  2349.  
  2350.  
  2351.  
  2352.  
  2353.  
  2354.  
  2355.  
  2356.  
  2357.  
  2358.  
  2359.  
  2360.  
  2361.  
  2362.  
  2363.  
  2364.  
  2365.  
  2366. # 29 "dinclude:amiga20/intuition/intuition.h" 4
  2367.  
  2368. # 29 "dinclude:amiga20/intuition/intuition.h" 4
  2369.  
  2370.  
  2371.  
  2372.  
  2373. # 1 "dinclude:amiga20/graphics/rastport.h" 5
  2374.  
  2375.  
  2376.  
  2377.  
  2378.  
  2379.  
  2380.  
  2381.  
  2382.  
  2383.  
  2384.  
  2385.  
  2386.  
  2387.  
  2388.  
  2389.  
  2390.  
  2391.  
  2392.  
  2393.  
  2394.  
  2395.  
  2396. struct AreaInfo
  2397. {
  2398.     WORD   *VctrTbl;          
  2399.     WORD   *VctrPtr;          
  2400.     BYTE    *FlagTbl;           
  2401.     BYTE    *FlagPtr;           
  2402.     WORD   Count;          
  2403.     WORD   MaxCount;          
  2404.     WORD   FirstX,FirstY;     
  2405. };
  2406.  
  2407. struct TmpRas
  2408. {
  2409.     BYTE *RasPtr;
  2410.     LONG Size;
  2411. };
  2412.  
  2413.  
  2414. struct GelsInfo
  2415. {
  2416.     BYTE sprRsrvd;          
  2417.  
  2418.     UBYTE Flags;           
  2419.     struct VSprite *gelHead, *gelTail;  
  2420.      
  2421.     WORD *nextLine;
  2422.      
  2423.     WORD **lastColor;
  2424.     struct collTable *collHandler;      
  2425.     WORD leftmost, rightmost, topmost, bottommost;
  2426.    APTR firstBlissObj,lastBlissObj;     
  2427. };
  2428.  
  2429. struct RastPort
  2430. {
  2431.     struct  Layer *Layer;
  2432.     struct  BitMap   *BitMap;
  2433.     UWORD  *AreaPtrn;          
  2434.     struct  TmpRas *TmpRas;
  2435.     struct  AreaInfo *AreaInfo;
  2436.     struct  GelsInfo *GelsInfo;
  2437.     UBYTE   Mask;           
  2438.     BYTE    FgPen;           
  2439.     BYTE    BgPen;           
  2440.     BYTE    AOlPen;           
  2441.     BYTE    DrawMode;           
  2442.     BYTE    AreaPtSz;           
  2443.     BYTE    linpatcnt;           
  2444.     BYTE    dummy;
  2445.     UWORD  Flags;          
  2446.     UWORD  LinePtrn;          
  2447.     WORD   cp_x, cp_y;          
  2448.     UBYTE   minterms[8];
  2449.     WORD   PenWidth;
  2450.     WORD   PenHeight;
  2451.     struct  TextFont *Font;    
  2452.     UBYTE   AlgoStyle;           
  2453.     UBYTE   TxFlags;           
  2454.     UWORD   TxHeight;           
  2455.     UWORD   TxWidth;           
  2456.     UWORD   TxBaseline;        
  2457.     WORD    TxSpacing;           
  2458.     APTR    *RP_User;
  2459.     ULONG   longreserved[2];
  2460.  
  2461.     UWORD   wordreserved[7];   
  2462.     UBYTE   reserved[8];       
  2463.  
  2464. };
  2465.  
  2466.  
  2467.  
  2468.  
  2469.  
  2470.  
  2471.  
  2472.  
  2473.  
  2474.  
  2475.  
  2476.  
  2477.  
  2478.           
  2479.  
  2480.  
  2481.  
  2482.  
  2483.  
  2484.  
  2485.  
  2486.  
  2487.  
  2488.  
  2489.  
  2490. # 33 "dinclude:amiga20/intuition/intuition.h" 4
  2491.  
  2492. # 33 "dinclude:amiga20/intuition/intuition.h" 4
  2493.  
  2494.  
  2495.  
  2496.  
  2497. # 1 "dinclude:amiga20/graphics/layers.h" 5
  2498.  
  2499.  
  2500.  
  2501.  
  2502.  
  2503.  
  2504.  
  2505.  
  2506.  
  2507.  
  2508.  
  2509.  
  2510.  
  2511.  
  2512.  
  2513.  
  2514.  
  2515.  
  2516.  
  2517.  
  2518.  
  2519.  
  2520.  
  2521.  
  2522.  
  2523.  
  2524.  
  2525.  
  2526.  
  2527.                      
  2528.                      
  2529.  
  2530.  
  2531. struct Layer_Info
  2532. {
  2533.     struct Layer *top_layer;
  2534.     struct Layer *check_lp;         
  2535.     struct ClipRect *obs;         
  2536.     struct MinList    FreeClipRects;
  2537.     struct SignalSemaphore Lock;
  2538.     struct List gs_Head;             
  2539.     LONG    longreserved;
  2540.     UWORD    Flags;
  2541.     BYTE    fatten_count;
  2542.     BYTE    LockLayersCount;
  2543.     UWORD  LayerInfo_extra_size;
  2544.     WORD    *blitbuff;
  2545.     void    *LayerInfo_extra;
  2546. };
  2547.  
  2548.  
  2549.  
  2550.  
  2551.  
  2552.  
  2553. # 37 "dinclude:amiga20/intuition/intuition.h" 4
  2554.  
  2555. # 37 "dinclude:amiga20/intuition/intuition.h" 4
  2556.  
  2557.  
  2558.  
  2559.  
  2560. # 1 "dinclude:amiga20/graphics/text.h" 5
  2561.  
  2562.  
  2563.  
  2564.  
  2565.  
  2566.  
  2567.  
  2568.  
  2569.  
  2570.  
  2571.  
  2572.  
  2573.  
  2574.  
  2575.  
  2576.  
  2577.  
  2578.  
  2579.  
  2580.  
  2581.  
  2582.  
  2583.  
  2584.  
  2585.  
  2586.  
  2587.  
  2588.  
  2589.  
  2590.  
  2591.  
  2592.  
  2593.  
  2594.  
  2595.  
  2596.  
  2597.  
  2598.  
  2599.  
  2600.  
  2601.  
  2602.  
  2603.  
  2604.  
  2605.  
  2606.  
  2607.  
  2608.  
  2609.  
  2610.  
  2611.  
  2612.  
  2613.  
  2614.  
  2615.  
  2616.  
  2617.                  
  2618.                  
  2619.                  
  2620.                  
  2621.  
  2622.      
  2623.  
  2624.  
  2625.  
  2626.  
  2627. struct TextAttr {
  2628.     STRPTR  ta_Name;         
  2629.     UWORD   ta_YSize;         
  2630.     UBYTE   ta_Style;         
  2631.     UBYTE   ta_Flags;         
  2632. };
  2633.  
  2634. struct TTextAttr {
  2635.     STRPTR  tta_Name;         
  2636.     UWORD   tta_YSize;         
  2637.     UBYTE   tta_Style;         
  2638.     UBYTE   tta_Flags;         
  2639.     struct TagItem *tta_Tags;     
  2640. };
  2641.  
  2642.  
  2643.  
  2644.  
  2645.                      
  2646.  
  2647.  
  2648.  
  2649.  
  2650.  
  2651. struct TextFont {
  2652.     struct Message tf_Message;     
  2653.                  
  2654.     UWORD   tf_YSize;         
  2655.     UBYTE   tf_Style;         
  2656.     UBYTE   tf_Flags;         
  2657.     UWORD   tf_XSize;         
  2658.     UWORD   tf_Baseline;     
  2659.     UWORD   tf_BoldSmear;     
  2660.  
  2661.     UWORD   tf_Accessors;     
  2662.  
  2663.     UBYTE   tf_LoChar;         
  2664.     UBYTE   tf_HiChar;         
  2665.     APTR    tf_CharData;     
  2666.  
  2667.     UWORD   tf_Modulo;         
  2668.     APTR    tf_CharLoc;         
  2669.                  
  2670.     APTR    tf_CharSpace;     
  2671.     APTR    tf_CharKern;     
  2672. };
  2673.  
  2674.  
  2675.  
  2676.  
  2677.  
  2678.  
  2679.  
  2680.  
  2681. struct TextFontExtension {     
  2682.     UWORD   tfe_MatchWord;         
  2683.     UBYTE   tfe_Flags0;             
  2684.     UBYTE   tfe_Flags1;             
  2685.     struct TextFont *tfe_BackPtr;     
  2686.     struct MsgPort *tfe_OrigReplyPort;     
  2687.     struct TagItem *tfe_Tags;         
  2688.     UWORD  *tfe_OFontPatchS;         
  2689.     UWORD  *tfe_OFontPatchK;         
  2690.      
  2691. };
  2692.  
  2693.  
  2694.  
  2695.  
  2696.  
  2697.  
  2698.                  
  2699.  
  2700.  
  2701.  
  2702.  
  2703.  
  2704.  
  2705. struct ColorFontColors {
  2706.     UWORD   cfc_Reserved;     
  2707.     UWORD   cfc_Count;         
  2708.     UWORD  *cfc_ColorTable;     
  2709. };
  2710.  
  2711.  
  2712. struct ColorTextFont {
  2713.     struct TextFont ctf_TF;
  2714.     UWORD   ctf_Flags;         
  2715.     UBYTE   ctf_Depth;         
  2716.     UBYTE   ctf_FgColor;     
  2717.     UBYTE   ctf_Low;         
  2718.     UBYTE   ctf_High;         
  2719.     UBYTE   ctf_PlanePick;     
  2720.     UBYTE   ctf_PlaneOnOff;     
  2721.     struct ColorFontColors *ctf_ColorFontColors;  
  2722.     APTR    ctf_CharData[8];     
  2723. };
  2724.  
  2725.  
  2726. struct TextExtent {
  2727.     UWORD   te_Width;         
  2728.     UWORD   te_Height;         
  2729.     struct Rectangle te_Extent;     
  2730. };
  2731.  
  2732.  
  2733.  
  2734. # 41 "dinclude:amiga20/intuition/intuition.h" 4
  2735.  
  2736. # 41 "dinclude:amiga20/intuition/intuition.h" 4
  2737.  
  2738.  
  2739.  
  2740.  
  2741.  
  2742.  
  2743.  
  2744.  
  2745. # 1 "dinclude:amiga20/devices/inputevent.h" 5
  2746.  
  2747.  
  2748.  
  2749.  
  2750.  
  2751.  
  2752.  
  2753.  
  2754.  
  2755.  
  2756.  
  2757.  
  2758.  
  2759.  
  2760.  
  2761.  
  2762. # 1 "dinclude:amiga20/devices/timer.h" 6
  2763.  
  2764.  
  2765.  
  2766.  
  2767.  
  2768.  
  2769.  
  2770.  
  2771.  
  2772.  
  2773.  
  2774.  
  2775.  
  2776.  
  2777.  
  2778. # 1 "dinclude:amiga20/exec/types.h" 7
  2779.  
  2780.  
  2781.  
  2782.  
  2783.  
  2784.  
  2785.  
  2786.  
  2787.  
  2788.  
  2789.  
  2790.  
  2791.  
  2792.  
  2793.  
  2794.  
  2795.  
  2796.  
  2797.  
  2798.  
  2799.  
  2800.  
  2801.  
  2802.  
  2803.  
  2804.  
  2805.  
  2806.  
  2807.  
  2808.  
  2809.  
  2810.  
  2811.  
  2812.  
  2813.  
  2814.  
  2815.  
  2816.  
  2817.  
  2818.  
  2819.  
  2820.  
  2821.  
  2822.  
  2823.  
  2824.  
  2825.  
  2826.  
  2827.  
  2828.  
  2829.  
  2830.  
  2831.  
  2832.  
  2833.  
  2834.  
  2835.  
  2836.  
  2837.  
  2838.  
  2839.  
  2840.  
  2841.  
  2842.  
  2843.  
  2844.  
  2845.  
  2846.  
  2847.  
  2848.  
  2849.  
  2850.  
  2851.  
  2852.  
  2853.  
  2854.  
  2855.  
  2856.  
  2857.  
  2858.  
  2859.  
  2860.  
  2861.  
  2862.  
  2863.  
  2864.  
  2865.  
  2866.  
  2867.  
  2868. # 16 "dinclude:amiga20/devices/timer.h" 6
  2869.  
  2870. # 16 "dinclude:amiga20/devices/timer.h" 6
  2871.  
  2872. # 1 "dinclude:amiga20/exec/io.h" 7
  2873.  
  2874.  
  2875.  
  2876.  
  2877.  
  2878.  
  2879.  
  2880.  
  2881.  
  2882.  
  2883.  
  2884.  
  2885.  
  2886.  
  2887.  
  2888.  
  2889.  
  2890.  
  2891.  
  2892. struct IORequest {
  2893.     struct  Message io_Message;
  2894.     struct  Device  *io_Device;      
  2895.     struct  Unit    *io_Unit;         
  2896.     UWORD   io_Command;         
  2897.     UBYTE   io_Flags;
  2898.     BYTE    io_Error;             
  2899. };
  2900.  
  2901. struct IOStdReq {
  2902.     struct  Message io_Message;
  2903.     struct  Device  *io_Device;      
  2904.     struct  Unit    *io_Unit;         
  2905.     UWORD   io_Command;         
  2906.     UBYTE   io_Flags;
  2907.     BYTE    io_Error;             
  2908.     ULONG   io_Actual;             
  2909.     ULONG   io_Length;             
  2910.     APTR    io_Data;             
  2911.     ULONG   io_Offset;             
  2912. };
  2913.  
  2914.  
  2915.  
  2916.  
  2917.  
  2918.  
  2919.  
  2920.  
  2921.  
  2922.  
  2923.  
  2924.  
  2925.  
  2926.  
  2927.  
  2928.  
  2929.  
  2930.  
  2931.  
  2932.  
  2933.  
  2934.  
  2935.  
  2936.  
  2937. # 17 "dinclude:amiga20/devices/timer.h" 6
  2938.  
  2939. # 17 "dinclude:amiga20/devices/timer.h" 6
  2940.  
  2941.  
  2942.  
  2943.  
  2944.  
  2945.  
  2946.  
  2947.  
  2948.  
  2949.  
  2950. struct timeval {
  2951.     ULONG tv_secs;
  2952.     ULONG tv_micro;
  2953. };
  2954.  
  2955. struct EClockVal {
  2956.     ULONG ev_hi;
  2957.     ULONG ev_lo;
  2958. };
  2959.  
  2960. struct timerequest {
  2961.     struct IORequest tr_node;
  2962.     struct timeval tr_time;
  2963. };
  2964.  
  2965.  
  2966.  
  2967.  
  2968.  
  2969.  
  2970.  
  2971.  
  2972. # 17 "dinclude:amiga20/devices/inputevent.h" 5
  2973.  
  2974. # 17 "dinclude:amiga20/devices/inputevent.h" 5
  2975.  
  2976.  
  2977.  
  2978.  
  2979.  
  2980.  
  2981.  
  2982.  
  2983.  
  2984.  
  2985.  
  2986.  
  2987.  
  2988.  
  2989.  
  2990.  
  2991.  
  2992.  
  2993.  
  2994.  
  2995.  
  2996.  
  2997.  
  2998.  
  2999.  
  3000.  
  3001.  
  3002.  
  3003.  
  3004.  
  3005.  
  3006.  
  3007.  
  3008.  
  3009.  
  3010.  
  3011.  
  3012.  
  3013.  
  3014.  
  3015.  
  3016.  
  3017.  
  3018.  
  3019.  
  3020.  
  3021.  
  3022.  
  3023.  
  3024.  
  3025.  
  3026.  
  3027.  
  3028.  
  3029.  
  3030.  
  3031.  
  3032.  
  3033.  
  3034.  
  3035.  
  3036.  
  3037.  
  3038.  
  3039.  
  3040.  
  3041.  
  3042.  
  3043.  
  3044.  
  3045.  
  3046. struct IEPointerPixel    {
  3047.     struct Screen    *iepp_Screen;     
  3048.     struct {                 
  3049.     WORD    X;
  3050.     WORD    Y;
  3051.     }            iepp_Position;
  3052. };
  3053.  
  3054.  
  3055.  
  3056.  
  3057.  
  3058.  
  3059.  
  3060.  
  3061.  
  3062.  
  3063.  
  3064.  
  3065.  
  3066. struct IEPointerTablet    {
  3067.     struct {
  3068.     UWORD    X;
  3069.     UWORD    Y;
  3070.     }            iept_Range;     
  3071.     struct {
  3072.     UWORD    X;
  3073.     UWORD    Y;
  3074.     }            iept_Value;     
  3075.  
  3076.     WORD        iept_Pressure;     
  3077. };
  3078.  
  3079.  
  3080.  
  3081.  
  3082.  
  3083.  
  3084.  
  3085.  
  3086.  
  3087.  
  3088.  
  3089.  
  3090.  
  3091.  
  3092.  
  3093.  
  3094.  
  3095.  
  3096.  
  3097.  
  3098.  
  3099.  
  3100.  
  3101.  
  3102.  
  3103.  
  3104.  
  3105.  
  3106.  
  3107.  
  3108.  
  3109.  
  3110.  
  3111.  
  3112.  
  3113.  
  3114.  
  3115.  
  3116.  
  3117.  
  3118.  
  3119.  
  3120.  
  3121.  
  3122.  
  3123.  
  3124.  
  3125.  
  3126.  
  3127.  
  3128.  
  3129.  
  3130.  
  3131.  
  3132.  
  3133.  
  3134.  
  3135.  
  3136.  
  3137.  
  3138.  
  3139.  
  3140.  
  3141.  
  3142.  
  3143.  
  3144.  
  3145.  
  3146.  
  3147.  
  3148.  
  3149.  
  3150.  
  3151.  
  3152.  
  3153.  
  3154.  
  3155.  
  3156.  
  3157. struct InputEvent {
  3158.     struct  InputEvent *ie_NextEvent;     
  3159.     UBYTE   ie_Class;             
  3160.     UBYTE   ie_SubClass;         
  3161.     UWORD   ie_Code;             
  3162.     UWORD   ie_Qualifier;         
  3163.     union {
  3164.     struct {
  3165.         WORD    ie_x;         
  3166.         WORD    ie_y;
  3167.     } ie_xy;
  3168.     APTR    ie_addr;         
  3169.     struct {
  3170.         UBYTE   ie_prev1DownCode;     
  3171.         UBYTE   ie_prev1DownQual;     
  3172.         UBYTE   ie_prev2DownCode;     
  3173.         UBYTE   ie_prev2DownQual;     
  3174.     } ie_dead;
  3175.     } ie_position;
  3176.     struct timeval ie_TimeStamp;     
  3177. };
  3178.  
  3179.  
  3180.  
  3181.  
  3182.  
  3183.  
  3184.  
  3185.  
  3186.  
  3187.  
  3188.  
  3189. # 49 "dinclude:amiga20/intuition/intuition.h" 4
  3190.  
  3191. # 49 "dinclude:amiga20/intuition/intuition.h" 4
  3192.  
  3193.  
  3194.  
  3195.  
  3196.  
  3197.  
  3198.  
  3199.  
  3200.  
  3201.  
  3202.  
  3203.  
  3204.  
  3205. struct Menu
  3206. {
  3207.     struct Menu *NextMenu;     
  3208.     WORD LeftEdge, TopEdge;     
  3209.     WORD Width, Height;     
  3210.     UWORD Flags;         
  3211.     BYTE *MenuName;         
  3212.     struct MenuItem *FirstItem;  
  3213.  
  3214.      
  3215.     WORD JazzX, JazzY, BeatX, BeatY;
  3216. };
  3217.  
  3218.  
  3219.  
  3220.  
  3221.  
  3222.  
  3223.  
  3224.  
  3225.  
  3226.  
  3227.  
  3228.  
  3229.  
  3230.  
  3231.  
  3232.  
  3233. struct MenuItem
  3234. {
  3235.     struct MenuItem *NextItem;     
  3236.     WORD LeftEdge, TopEdge;     
  3237.     WORD Width, Height;         
  3238.     UWORD Flags;         
  3239.  
  3240.     LONG MutualExclude;         
  3241.  
  3242.     APTR ItemFill;         
  3243.  
  3244.     
  3245.  
  3246.  
  3247.     APTR SelectFill;         
  3248.  
  3249.     BYTE Command;         
  3250.  
  3251.     struct MenuItem *SubItem;     
  3252.  
  3253.     
  3254.  
  3255.  
  3256.     UWORD NextSelect;
  3257. };
  3258.  
  3259.  
  3260.  
  3261.  
  3262.  
  3263.  
  3264.  
  3265.  
  3266.  
  3267.  
  3268.  
  3269.  
  3270.  
  3271.  
  3272.  
  3273.  
  3274.  
  3275.  
  3276.  
  3277.  
  3278.  
  3279.  
  3280.  
  3281.  
  3282.  
  3283.  
  3284.  
  3285.  
  3286.  
  3287.  
  3288.  
  3289. struct Requester
  3290. {
  3291.     struct Requester *OlderRequest;
  3292.     WORD LeftEdge, TopEdge;         
  3293.     WORD Width, Height;             
  3294.     WORD RelLeft, RelTop;         
  3295.  
  3296.     struct Gadget *ReqGadget;         
  3297.     struct Border *ReqBorder;         
  3298.     struct IntuiText *ReqText;         
  3299.     UWORD Flags;             
  3300.  
  3301.      
  3302.     UBYTE BackFill;
  3303.      
  3304.     struct Layer *ReqLayer;
  3305.  
  3306.     UBYTE ReqPad1[32];
  3307.  
  3308.     
  3309.  
  3310.  
  3311.  
  3312.  
  3313.  
  3314.     struct BitMap *ImageBMap;     
  3315.     struct Window *RWindow;     
  3316.  
  3317.     struct Image  *ReqImage;     
  3318.  
  3319.     UBYTE ReqPad2[32];
  3320. };
  3321.  
  3322.  
  3323.  
  3324.  
  3325.               
  3326.  
  3327.  
  3328.  
  3329.  
  3330.      
  3331.  
  3332.      
  3333.  
  3334.      
  3335.  
  3336.  
  3337.  
  3338.     
  3339.  
  3340.  
  3341.  
  3342.      
  3343.  
  3344.  
  3345.  
  3346.  
  3347.  
  3348.  
  3349.  
  3350.  
  3351.  
  3352.  
  3353.  
  3354.  
  3355.  
  3356.  
  3357.  
  3358.  
  3359. struct Gadget
  3360. {
  3361.     struct Gadget *NextGadget;     
  3362.  
  3363.     WORD LeftEdge, TopEdge;     
  3364.     WORD Width, Height;         
  3365.  
  3366.     UWORD Flags;         
  3367.  
  3368.     UWORD Activation;         
  3369.  
  3370.     UWORD GadgetType;         
  3371.  
  3372.     
  3373.  
  3374.  
  3375.  
  3376.     APTR GadgetRender;
  3377.  
  3378.     
  3379.  
  3380.  
  3381.     APTR SelectRender;
  3382.  
  3383.     struct IntuiText *GadgetText;    
  3384.  
  3385.     
  3386.  
  3387.  
  3388.  
  3389.  
  3390.  
  3391.  
  3392.  
  3393.  
  3394.  
  3395.  
  3396.     LONG MutualExclude;   
  3397.  
  3398.     
  3399.  
  3400.  
  3401.     APTR SpecialInfo;
  3402.  
  3403.     UWORD GadgetID;     
  3404.     APTR UserData;     
  3405. };
  3406.  
  3407.  
  3408.  
  3409.  
  3410.  
  3411.  
  3412.  
  3413.  
  3414.  
  3415.  
  3416.  
  3417.  
  3418.  
  3419.  
  3420.  
  3421.  
  3422.  
  3423.  
  3424.  
  3425.  
  3426.  
  3427.  
  3428.  
  3429.  
  3430.  
  3431.  
  3432.  
  3433.  
  3434.  
  3435.  
  3436.  
  3437.  
  3438.  
  3439.  
  3440.  
  3441.  
  3442.  
  3443.  
  3444.  
  3445.  
  3446.  
  3447.  
  3448.  
  3449.  
  3450.  
  3451.  
  3452.  
  3453.  
  3454.  
  3455.  
  3456.  
  3457.  
  3458.  
  3459.  
  3460.  
  3461.  
  3462.  
  3463.  
  3464.  
  3465.  
  3466.  
  3467.  
  3468.  
  3469.  
  3470.  
  3471.  
  3472.  
  3473.  
  3474.  
  3475.  
  3476.  
  3477.  
  3478.  
  3479.  
  3480.  
  3481.  
  3482.  
  3483.  
  3484.  
  3485.  
  3486.  
  3487.  
  3488.  
  3489.  
  3490.  
  3491.  
  3492.  
  3493.  
  3494.  
  3495.  
  3496.  
  3497.  
  3498.  
  3499.  
  3500.  
  3501.  
  3502.  
  3503.  
  3504.  
  3505.  
  3506.  
  3507.  
  3508.  
  3509.  
  3510.  
  3511.  
  3512.  
  3513.  
  3514.  
  3515.  
  3516.  
  3517.                   
  3518.  
  3519.  
  3520.  
  3521.  
  3522.  
  3523.  
  3524.  
  3525.  
  3526.  
  3527.  
  3528.  
  3529.  
  3530.  
  3531.  
  3532.  
  3533.  
  3534.  
  3535.  
  3536.  
  3537.  
  3538.  
  3539.  
  3540.  
  3541.  
  3542.  
  3543.  
  3544.  
  3545.  
  3546.  
  3547.  
  3548.  
  3549.  
  3550.  
  3551.  
  3552.  
  3553.  
  3554.  
  3555.  
  3556.  
  3557.  
  3558.  
  3559.  
  3560.  
  3561.  
  3562.  
  3563.  
  3564.  
  3565.  
  3566.  
  3567.  
  3568.  
  3569.  
  3570.  
  3571. struct BoolInfo
  3572. {
  3573.     UWORD  Flags;     
  3574.     UWORD  *Mask;    
  3575.  
  3576.  
  3577.  
  3578.  
  3579.  
  3580.     ULONG  Reserved;     
  3581. };
  3582.  
  3583.  
  3584.  
  3585.  
  3586.  
  3587.  
  3588.  
  3589.  
  3590.  
  3591.  
  3592.  
  3593.  
  3594.  
  3595. struct PropInfo
  3596. {
  3597.     UWORD Flags;     
  3598.  
  3599.     
  3600.  
  3601.  
  3602.  
  3603.  
  3604.  
  3605.  
  3606.  
  3607.     UWORD HorizPot;     
  3608.     UWORD VertPot;     
  3609.  
  3610.     
  3611.  
  3612.  
  3613.  
  3614.  
  3615.  
  3616.  
  3617.  
  3618.  
  3619.  
  3620.  
  3621.  
  3622.  
  3623.  
  3624.  
  3625.  
  3626.  
  3627.     UWORD HorizBody;         
  3628.     UWORD VertBody;         
  3629.  
  3630.      
  3631.     UWORD CWidth;     
  3632.     UWORD CHeight;     
  3633.     UWORD HPotRes, VPotRes;     
  3634.     UWORD LeftBorder;         
  3635.     UWORD TopBorder;         
  3636. };
  3637.  
  3638.  
  3639.  
  3640.  
  3641.  
  3642.  
  3643.  
  3644.  
  3645.  
  3646.  
  3647.  
  3648.  
  3649.  
  3650.  
  3651.  
  3652.  
  3653.  
  3654.  
  3655.  
  3656.  
  3657.  
  3658.  
  3659.  
  3660.  
  3661.  
  3662.  
  3663.  
  3664.  
  3665.  
  3666.  
  3667. struct StringInfo
  3668. {
  3669.      
  3670.     UBYTE *Buffer;     
  3671.     UBYTE *UndoBuffer;     
  3672.     WORD BufferPos;     
  3673.     WORD MaxChars;     
  3674.     WORD DispPos;     
  3675.  
  3676.      
  3677.     WORD UndoPos;     
  3678.     WORD NumChars;     
  3679.     WORD DispCount;     
  3680.     WORD CLeft, CTop;     
  3681.  
  3682.     
  3683.  
  3684.  
  3685.  
  3686.  
  3687.  
  3688.      
  3689.     struct StringExtend *Extension;
  3690.  
  3691.     
  3692.  
  3693.  
  3694.  
  3695.  
  3696.     LONG LongInt;
  3697.  
  3698.     
  3699.  
  3700.  
  3701.  
  3702.  
  3703.     struct KeyMap *AltKeyMap;
  3704. };
  3705.  
  3706.  
  3707.  
  3708.  
  3709.  
  3710.  
  3711.  
  3712.  
  3713. struct IntuiText
  3714. {
  3715.     UBYTE FrontPen, BackPen;     
  3716.     UBYTE DrawMode;         
  3717.     WORD LeftEdge;         
  3718.     WORD TopEdge;         
  3719.     struct TextAttr *ITextFont;     
  3720.     UBYTE *IText;         
  3721.     struct IntuiText *NextText;  
  3722. };
  3723.  
  3724.  
  3725.  
  3726.  
  3727.  
  3728.  
  3729.  
  3730.  
  3731.  
  3732.  
  3733.  
  3734.  
  3735.  
  3736.  
  3737.  
  3738.  
  3739.  
  3740.  
  3741. struct Border
  3742. {
  3743.     WORD LeftEdge, TopEdge;     
  3744.     UBYTE FrontPen, BackPen;     
  3745.     UBYTE DrawMode;         
  3746.     BYTE Count;             
  3747.     WORD *XY;             
  3748.     struct Border *NextBorder;     
  3749. };
  3750.  
  3751.  
  3752.  
  3753.  
  3754.  
  3755.  
  3756.  
  3757.  
  3758.  
  3759.  
  3760.  
  3761.  
  3762. struct Image
  3763. {
  3764.     WORD LeftEdge;         
  3765.     WORD TopEdge;         
  3766.     WORD Width;             
  3767.     WORD Height;
  3768.     WORD Depth;             
  3769.     UWORD *ImageData;         
  3770.  
  3771.     
  3772.  
  3773.  
  3774.  
  3775.  
  3776.  
  3777.  
  3778.  
  3779.  
  3780.  
  3781.  
  3782.  
  3783.  
  3784.  
  3785.  
  3786.  
  3787.  
  3788.  
  3789.  
  3790.  
  3791.  
  3792.  
  3793.  
  3794.  
  3795.  
  3796.  
  3797.  
  3798.  
  3799.  
  3800.  
  3801.  
  3802.  
  3803.     UBYTE PlanePick, PlaneOnOff;
  3804.  
  3805.     
  3806.  
  3807.  
  3808.  
  3809.     struct Image *NextImage;
  3810. };
  3811.  
  3812.  
  3813.  
  3814.  
  3815.  
  3816.  
  3817.  
  3818.  
  3819.  
  3820. struct IntuiMessage
  3821. {
  3822.     struct Message ExecMessage;
  3823.  
  3824.     
  3825.  
  3826.  
  3827.     ULONG Class;
  3828.  
  3829.      
  3830.     UWORD Code;
  3831.  
  3832.      
  3833.     UWORD Qualifier;
  3834.  
  3835.     
  3836.  
  3837.  
  3838.     APTR IAddress;
  3839.  
  3840.     
  3841.  
  3842.  
  3843.  
  3844.  
  3845.  
  3846.     WORD MouseX, MouseY;
  3847.  
  3848.     
  3849.  
  3850.  
  3851.     ULONG Seconds, Micros;
  3852.  
  3853.     
  3854.  
  3855.  
  3856.     struct Window *IDCMPWindow;
  3857.  
  3858.      
  3859.     struct IntuiMessage *SpecialLink;
  3860. };
  3861.  
  3862.  
  3863.  
  3864.  
  3865.  
  3866.  
  3867.  
  3868.  
  3869.  
  3870.  
  3871.  
  3872.  
  3873.  
  3874.  
  3875.  
  3876.  
  3877.  
  3878.  
  3879.  
  3880.  
  3881.  
  3882.  
  3883.  
  3884.  
  3885.  
  3886.  
  3887.  
  3888.  
  3889.  
  3890.  
  3891.  
  3892.  
  3893.  
  3894.  
  3895.  
  3896.  
  3897.  
  3898.  
  3899.  
  3900.  
  3901.  
  3902.  
  3903.  
  3904.  
  3905.  
  3906.  
  3907.  
  3908.  
  3909.  
  3910.  
  3911.  
  3912.  
  3913.  
  3914.  
  3915.  
  3916.  
  3917.  
  3918.  
  3919.  
  3920.  
  3921.  
  3922.  
  3923.  
  3924.  
  3925.  
  3926. struct IBox {
  3927.     WORD Left;
  3928.     WORD Top;
  3929.     WORD Width;
  3930.     WORD Height;
  3931.     };
  3932.  
  3933.  
  3934.  
  3935.  
  3936.  
  3937.  
  3938. struct Window
  3939. {
  3940.     struct Window *NextWindow;         
  3941.  
  3942.     WORD LeftEdge, TopEdge;         
  3943.     WORD Width, Height;             
  3944.  
  3945.     WORD MouseY, MouseX;         
  3946.  
  3947.     WORD MinWidth, MinHeight;         
  3948.     UWORD MaxWidth, MaxHeight;         
  3949.  
  3950.     ULONG Flags;             
  3951.  
  3952.     struct Menu *MenuStrip;         
  3953.  
  3954.     UBYTE *Title;             
  3955.  
  3956.     struct Requester *FirstRequest;     
  3957.  
  3958.     struct Requester *DMRequest;     
  3959.  
  3960.     WORD ReqCount;             
  3961.  
  3962.     struct Screen *WScreen;         
  3963.     struct RastPort *RPort;         
  3964.  
  3965.     
  3966.  
  3967.  
  3968.  
  3969.  
  3970.  
  3971.  
  3972.  
  3973.  
  3974.  
  3975.     BYTE BorderLeft, BorderTop, BorderRight, BorderBottom;
  3976.     struct RastPort *BorderRPort;
  3977.  
  3978.  
  3979.     
  3980.  
  3981.  
  3982.  
  3983.  
  3984.     struct Gadget *FirstGadget;
  3985.  
  3986.      
  3987.     struct Window *Parent, *Descendant;
  3988.  
  3989.     
  3990.  
  3991.  
  3992.     UWORD *Pointer;     
  3993.     BYTE PtrHeight;     
  3994.     BYTE PtrWidth;     
  3995.     BYTE XOffset, YOffset;     
  3996.  
  3997.      
  3998.     ULONG IDCMPFlags;     
  3999.     struct MsgPort *UserPort, *WindowPort;
  4000.     struct IntuiMessage *MessageKey;
  4001.  
  4002.     UBYTE DetailPen, BlockPen;     
  4003.  
  4004.     
  4005.  
  4006.  
  4007.  
  4008.     struct Image *CheckMark;
  4009.  
  4010.     UBYTE *ScreenTitle;     
  4011.  
  4012.     
  4013.  
  4014.  
  4015.  
  4016.  
  4017.  
  4018.     WORD GZZMouseX;
  4019.     WORD GZZMouseY;
  4020.     
  4021.  
  4022.  
  4023.     WORD GZZWidth;
  4024.     WORD GZZHeight;
  4025.  
  4026.     UBYTE *ExtData;
  4027.  
  4028.     BYTE *UserData;     
  4029.  
  4030.     
  4031.  
  4032.  
  4033.     struct Layer *WLayer;
  4034.  
  4035.     
  4036.  
  4037.  
  4038.     struct TextFont *IFont;
  4039.  
  4040.     
  4041.  
  4042.  
  4043.  
  4044.     ULONG    MoreFlags;
  4045.  
  4046.      
  4047. };
  4048.  
  4049.  
  4050.  
  4051.  
  4052.  
  4053.  
  4054.  
  4055.  
  4056.  
  4057.  
  4058.  
  4059.  
  4060.  
  4061.  
  4062.  
  4063.  
  4064.  
  4065.  
  4066.  
  4067.  
  4068.  
  4069.  
  4070.  
  4071.  
  4072.  
  4073.  
  4074.  
  4075.  
  4076.  
  4077.  
  4078.  
  4079.  
  4080.  
  4081.  
  4082.  
  4083.  
  4084.  
  4085.  
  4086.  
  4087.  
  4088.  
  4089.  
  4090.  
  4091.  
  4092.  
  4093.  
  4094.  
  4095.                      
  4096.  
  4097.  
  4098.  
  4099.  
  4100.  
  4101.  
  4102.  
  4103.  
  4104.  
  4105.  
  4106.  
  4107.  
  4108.  
  4109.  
  4110.  
  4111.  
  4112.  
  4113.  
  4114.  
  4115.  
  4116.  
  4117. struct NewWindow
  4118. {
  4119.     WORD LeftEdge, TopEdge;         
  4120.     WORD Width, Height;             
  4121.  
  4122.     UBYTE DetailPen, BlockPen;         
  4123.  
  4124.     ULONG IDCMPFlags;             
  4125.  
  4126.     ULONG Flags;             
  4127.  
  4128.     
  4129.  
  4130.  
  4131.  
  4132.  
  4133.     struct Gadget *FirstGadget;
  4134.  
  4135.     
  4136.  
  4137.  
  4138.  
  4139.     struct Image *CheckMark;
  4140.  
  4141.     UBYTE *Title;               
  4142.  
  4143.     
  4144.  
  4145.  
  4146.  
  4147.  
  4148.     struct Screen *Screen;
  4149.  
  4150.     
  4151.  
  4152.  
  4153.  
  4154.     struct BitMap *BitMap;
  4155.  
  4156.     
  4157.  
  4158.  
  4159.  
  4160.  
  4161.  
  4162.  
  4163.  
  4164.  
  4165.  
  4166.  
  4167.  
  4168.     WORD MinWidth, MinHeight;         
  4169.     UWORD MaxWidth, MaxHeight;          
  4170.  
  4171.     
  4172.  
  4173.  
  4174.  
  4175.  
  4176.     UWORD Type;
  4177.  
  4178. };
  4179.  
  4180.  
  4181.  
  4182.  
  4183.  
  4184.  
  4185.  
  4186.  
  4187. struct ExtNewWindow
  4188. {
  4189.     WORD LeftEdge, TopEdge;
  4190.     WORD Width, Height;
  4191.  
  4192.     UBYTE DetailPen, BlockPen;
  4193.     ULONG IDCMPFlags;
  4194.     ULONG Flags;
  4195.     struct Gadget *FirstGadget;
  4196.  
  4197.     struct Image *CheckMark;
  4198.  
  4199.     UBYTE *Title;
  4200.     struct Screen *Screen;
  4201.     struct BitMap *BitMap;
  4202.  
  4203.     WORD MinWidth, MinHeight;
  4204.     UWORD MaxWidth, MaxHeight;
  4205.  
  4206.     
  4207.  
  4208.  
  4209.  
  4210.  
  4211.  
  4212.  
  4213.  
  4214.     UWORD Type;
  4215.  
  4216.     
  4217.  
  4218.  
  4219.  
  4220.  
  4221.  
  4222.  
  4223.  
  4224.  
  4225.     struct TagItem    *Extension;
  4226. };
  4227.  
  4228.  
  4229.  
  4230.  
  4231.  
  4232.  
  4233.  
  4234.  
  4235.  
  4236.  
  4237.  
  4238.  
  4239.  
  4240.  
  4241.  
  4242.  
  4243.  
  4244.  
  4245.              
  4246.  
  4247.  
  4248.  
  4249.  
  4250.             
  4251.  
  4252.  
  4253.  
  4254.  
  4255.  
  4256.              
  4257.  
  4258.  
  4259.  
  4260.  
  4261.  
  4262.  
  4263.  
  4264.  
  4265.  
  4266.             
  4267.  
  4268.  
  4269.  
  4270.  
  4271.  
  4272.  
  4273.  
  4274.  
  4275.             
  4276.  
  4277.  
  4278.  
  4279.  
  4280.             
  4281.  
  4282.  
  4283.  
  4284.  
  4285.  
  4286.  
  4287.             
  4288.  
  4289.  
  4290.  
  4291.  
  4292.  
  4293.              
  4294.  
  4295.             
  4296.  
  4297.  
  4298.  
  4299.  
  4300.  
  4301.  
  4302.  
  4303.             
  4304.  
  4305.  
  4306.  
  4307.  
  4308.  
  4309.  
  4310.  
  4311.             
  4312.  
  4313.  
  4314.  
  4315.             
  4316.  
  4317.  
  4318.  
  4319.              
  4320.  
  4321.     
  4322.  
  4323.  
  4324.  
  4325.  
  4326.  
  4327.  
  4328.  
  4329.  
  4330.  
  4331.  
  4332.  
  4333.  
  4334.  
  4335.  
  4336.              
  4337.  
  4338.              
  4339.  
  4340.  
  4341.  
  4342.      
  4343.  
  4344.             
  4345.  
  4346.  
  4347.  
  4348.  
  4349.              
  4350.  
  4351.  
  4352.  
  4353.             
  4354.  
  4355.  
  4356.  
  4357.  
  4358.  
  4359.  
  4360.  
  4361. # 1 "dinclude:amiga20/intuition/screens.h" 5
  4362.  
  4363.  
  4364.  
  4365.  
  4366.  
  4367.  
  4368.  
  4369.  
  4370.  
  4371.  
  4372.  
  4373.  
  4374.  
  4375.  
  4376.  
  4377.  
  4378.  
  4379.  
  4380.  
  4381.  
  4382.  
  4383.  
  4384.  
  4385.  
  4386.  
  4387.  
  4388.  
  4389.  
  4390.  
  4391.  
  4392.  
  4393.  
  4394.  
  4395.  
  4396.  
  4397.  
  4398.  
  4399.  
  4400.  
  4401.  
  4402.  
  4403.  
  4404.  
  4405.  
  4406.  
  4407.  
  4408.  
  4409.  
  4410.  
  4411.  
  4412.  
  4413.  
  4414.  
  4415.  
  4416.  
  4417.  
  4418.  
  4419.  
  4420.  
  4421.  
  4422. struct DrawInfo
  4423. {
  4424.     UWORD    dri_Version;     
  4425.     UWORD    dri_NumPens;     
  4426.     UWORD    *dri_Pens;     
  4427.  
  4428.     struct TextFont    *dri_Font;     
  4429.     UWORD    dri_Depth;     
  4430.  
  4431.     struct {       
  4432.     UWORD    X;
  4433.     UWORD    Y;
  4434.     }        dri_Resolution;
  4435.  
  4436.     ULONG    dri_Flags;         
  4437.     ULONG    dri_Reserved[7];     
  4438. };
  4439.  
  4440.  
  4441.  
  4442.  
  4443.  
  4444.  
  4445.  
  4446.  
  4447.  
  4448.  
  4449.  
  4450.  
  4451.  
  4452.  
  4453.  
  4454.  
  4455.  
  4456.  
  4457.  
  4458.  
  4459. struct Screen
  4460. {
  4461.     struct Screen *NextScreen;         
  4462.     struct Window *FirstWindow;         
  4463.  
  4464.     WORD LeftEdge, TopEdge;         
  4465.     WORD Width, Height;             
  4466.  
  4467.     WORD MouseY, MouseX;         
  4468.  
  4469.     UWORD Flags;             
  4470.  
  4471.     UBYTE *Title;             
  4472.     UBYTE *DefaultTitle;         
  4473.  
  4474.      
  4475.     
  4476.  
  4477.  
  4478.  
  4479.  
  4480.  
  4481.  
  4482.     BYTE BarHeight, BarVBorder, BarHBorder, MenuVBorder, MenuHBorder;
  4483.     BYTE WBorTop, WBorLeft, WBorRight, WBorBottom;
  4484.  
  4485.     struct TextAttr *Font;         
  4486.  
  4487.      
  4488.     struct ViewPort ViewPort;         
  4489.     struct RastPort RastPort;         
  4490.     struct BitMap BitMap;         
  4491.     struct Layer_Info LayerInfo;     
  4492.  
  4493.     
  4494.  
  4495.  
  4496.     struct Gadget *FirstGadget;
  4497.  
  4498.     UBYTE DetailPen, BlockPen;         
  4499.  
  4500.     
  4501.  
  4502.  
  4503.     UWORD SaveColor0;
  4504.  
  4505.      
  4506.     struct Layer *BarLayer;
  4507.  
  4508.     UBYTE *ExtData;
  4509.  
  4510.     UBYTE *UserData;     
  4511.  
  4512.      
  4513. };
  4514.  
  4515.  
  4516.  
  4517.  
  4518.  
  4519.  
  4520.  
  4521.  
  4522.  
  4523.  
  4524.  
  4525.  
  4526.  
  4527.  
  4528.  
  4529.  
  4530.  
  4531.  
  4532.  
  4533.  
  4534.  
  4535.  
  4536.  
  4537.  
  4538.  
  4539.  
  4540.  
  4541.  
  4542.  
  4543.  
  4544.  
  4545.  
  4546.  
  4547.  
  4548.  
  4549.  
  4550.  
  4551.  
  4552.  
  4553.  
  4554.  
  4555.  
  4556.  
  4557.  
  4558.  
  4559.  
  4560.  
  4561.  
  4562.  
  4563.  
  4564.  
  4565.  
  4566.              
  4567.  
  4568.              
  4569.  
  4570.              
  4571.  
  4572.  
  4573.              
  4574.  
  4575.             
  4576.  
  4577.  
  4578.  
  4579.  
  4580.              
  4581.  
  4582.              
  4583.  
  4584.             
  4585.  
  4586.  
  4587.  
  4588.  
  4589.              
  4590.  
  4591.             
  4592.  
  4593.  
  4594.  
  4595.             
  4596.  
  4597.  
  4598.  
  4599.  
  4600.  
  4601.             
  4602.  
  4603.  
  4604.  
  4605.             
  4606.  
  4607.  
  4608.  
  4609.             
  4610.  
  4611.  
  4612.  
  4613.             
  4614.  
  4615.  
  4616.  
  4617.  
  4618.  
  4619.  
  4620.  
  4621.  
  4622.  
  4623.  
  4624.  
  4625.              
  4626.  
  4627.  
  4628.  
  4629.              
  4630.  
  4631.              
  4632.  
  4633.              
  4634.  
  4635.              
  4636.  
  4637.             
  4638.  
  4639.  
  4640.  
  4641.             
  4642.  
  4643.  
  4644.  
  4645.  
  4646.  
  4647.  
  4648.  
  4649.  
  4650.  
  4651.  
  4652.  
  4653.  
  4654.  
  4655.  
  4656.  
  4657.  
  4658.  
  4659.  
  4660.  
  4661.  
  4662.  
  4663.  
  4664.  
  4665.  
  4666.  
  4667.  
  4668.  
  4669.  
  4670.  
  4671. struct NewScreen
  4672. {
  4673.     WORD LeftEdge, TopEdge, Width, Height, Depth;   
  4674.  
  4675.     UBYTE DetailPen, BlockPen;     
  4676.  
  4677.     UWORD ViewModes;         
  4678.  
  4679.     UWORD Type;             
  4680.  
  4681.     struct TextAttr *Font;     
  4682.  
  4683.     UBYTE *DefaultTitle;     
  4684.  
  4685.     struct Gadget *Gadgets;     
  4686.  
  4687.     
  4688.  
  4689.  
  4690.  
  4691.  
  4692.  
  4693.     struct BitMap *CustomBitMap;
  4694. };
  4695.  
  4696.  
  4697.  
  4698.  
  4699.  
  4700.  
  4701.  
  4702.  
  4703.  
  4704.  
  4705.  
  4706.  
  4707. struct ExtNewScreen
  4708. {
  4709.     WORD LeftEdge, TopEdge, Width, Height, Depth;
  4710.     UBYTE DetailPen, BlockPen;
  4711.     UWORD ViewModes;
  4712.     UWORD Type;
  4713.     struct TextAttr *Font;
  4714.     UBYTE *DefaultTitle;
  4715.     struct Gadget *Gadgets;
  4716.     struct BitMap *CustomBitMap;
  4717.  
  4718.     struct TagItem    *Extension;
  4719.                 
  4720.  
  4721.  
  4722. };
  4723.  
  4724.  
  4725.  
  4726.  
  4727.  
  4728.  
  4729.  
  4730.  
  4731.  
  4732.  
  4733.  
  4734.  
  4735.  
  4736.  
  4737.  
  4738.  
  4739.  
  4740.  
  4741.  
  4742.  
  4743. struct PubScreenNode    {
  4744.     struct Node        psn_Node;     
  4745.     struct Screen    *psn_Screen;
  4746.     UWORD        psn_Flags;     
  4747.     WORD        psn_Size;     
  4748.     WORD        psn_VisitorCount;  
  4749.     struct Task        *psn_SigTask;     
  4750.     UBYTE        psn_SigBit;     
  4751. };
  4752.  
  4753.  
  4754.  
  4755.  
  4756.  
  4757.  
  4758.  
  4759.  
  4760.  
  4761.  
  4762.  
  4763.  
  4764.  
  4765. # 1 "dinclude:amiga20/intuition/iobsolete.h" 6
  4766.  
  4767.  
  4768.  
  4769.  
  4770.  
  4771.  
  4772.  
  4773.  
  4774.  
  4775.  
  4776.  
  4777.  
  4778.  
  4779.  
  4780.  
  4781.  
  4782.  
  4783.  
  4784.  
  4785.  
  4786.  
  4787.  
  4788.  
  4789.  
  4790.  
  4791.  
  4792.  
  4793.  
  4794.  
  4795.  
  4796.  
  4797.  
  4798.  
  4799.  
  4800.  
  4801.  
  4802.  
  4803.  
  4804.  
  4805.  
  4806.  
  4807.  
  4808.  
  4809.  
  4810.  
  4811.  
  4812.  
  4813.  
  4814.  
  4815.  
  4816.  
  4817.  
  4818.  
  4819.  
  4820.  
  4821.  
  4822.  
  4823.  
  4824.  
  4825.  
  4826.  
  4827.  
  4828.  
  4829.  
  4830.  
  4831.  
  4832.  
  4833.  
  4834.  
  4835.  
  4836.  
  4837.  
  4838.  
  4839.  
  4840.  
  4841.  
  4842.  
  4843.  
  4844.  
  4845.  
  4846.  
  4847.  
  4848.  
  4849.  
  4850.  
  4851.  
  4852.  
  4853.  
  4854.  
  4855.  
  4856.  
  4857.  
  4858.  
  4859.  
  4860.  
  4861.  
  4862.  
  4863.  
  4864.  
  4865.  
  4866.  
  4867.  
  4868.  
  4869.  
  4870.  
  4871.  
  4872.  
  4873.  
  4874.  
  4875.  
  4876.  
  4877.  
  4878.  
  4879.  
  4880.  
  4881.  
  4882.  
  4883.  
  4884.  
  4885.  
  4886.  
  4887.  
  4888.  
  4889.  
  4890.  
  4891.  
  4892.  
  4893.  
  4894.  
  4895.  
  4896.  
  4897.  
  4898.  
  4899.  
  4900.  
  4901.  
  4902.  
  4903.  
  4904.  
  4905.  
  4906.  
  4907.  
  4908.  
  4909.  
  4910.  
  4911.  
  4912.  
  4913.  
  4914.  
  4915.  
  4916.  
  4917.  
  4918.  
  4919.  
  4920.  
  4921.  
  4922.  
  4923.  
  4924.  
  4925.  
  4926.  
  4927.  
  4928.  
  4929.  
  4930.  
  4931.  
  4932.  
  4933.  
  4934.  
  4935.  
  4936.  
  4937.  
  4938.  
  4939.  
  4940.  
  4941.  
  4942.  
  4943.  
  4944.  
  4945.  
  4946.  
  4947.  
  4948.  
  4949.  
  4950.  
  4951.  
  4952.  
  4953.  
  4954.  
  4955.  
  4956.  
  4957.  
  4958.  
  4959.  
  4960.  
  4961.  
  4962.  
  4963.  
  4964.  
  4965.  
  4966.  
  4967.  
  4968.  
  4969.  
  4970.  
  4971.  
  4972.  
  4973.  
  4974.  
  4975.  
  4976.  
  4977.  
  4978.  
  4979.  
  4980.  
  4981.  
  4982.  
  4983.  
  4984.  
  4985.  
  4986.  
  4987.  
  4988.  
  4989.  
  4990.  
  4991.  
  4992.  
  4993.  
  4994.  
  4995.  
  4996.  
  4997.  
  4998.  
  4999.  
  5000.  
  5001.  
  5002.  
  5003.  
  5004.  
  5005.  
  5006.  
  5007.  
  5008.  
  5009.  
  5010.  
  5011.  
  5012.  
  5013.  
  5014.  
  5015.  
  5016.  
  5017.  
  5018.  
  5019.  
  5020.  
  5021.  
  5022.  
  5023.  
  5024.  
  5025.  
  5026.  
  5027.  
  5028.  
  5029.  
  5030.  
  5031.  
  5032.  
  5033.  
  5034.  
  5035.  
  5036.  
  5037.  
  5038.  
  5039.  
  5040.  
  5041.  
  5042.  
  5043.  
  5044.  
  5045.  
  5046.  
  5047.  
  5048.  
  5049.  
  5050.  
  5051.  
  5052.  
  5053.  
  5054.  
  5055.  
  5056.  
  5057.  
  5058.  
  5059.  
  5060.  
  5061.  
  5062.  
  5063.  
  5064.  
  5065.  
  5066.  
  5067.  
  5068.  
  5069.  
  5070.  
  5071.  
  5072.  
  5073.  
  5074.  
  5075.  
  5076.  
  5077.  
  5078.  
  5079.  
  5080.  
  5081.  
  5082.  
  5083.  
  5084.  
  5085.  
  5086.  
  5087.  
  5088.  
  5089.  
  5090.  
  5091.  
  5092.  
  5093.  
  5094.  
  5095.  
  5096.  
  5097.  
  5098.  
  5099.  
  5100.  
  5101.  
  5102.  
  5103.  
  5104.  
  5105.  
  5106.  
  5107.  
  5108.  
  5109.  
  5110.  
  5111.  
  5112.  
  5113.  
  5114.  
  5115.  
  5116.  
  5117.  
  5118.  
  5119.  
  5120.  
  5121.  
  5122.  
  5123.  
  5124.  
  5125.  
  5126.  
  5127.  
  5128.  
  5129.  
  5130.  
  5131.  
  5132.  
  5133.  
  5134.  
  5135.  
  5136.  
  5137.  
  5138. # 404 "dinclude:amiga20/intuition/screens.h" 5
  5139.  
  5140. # 404 "dinclude:amiga20/intuition/screens.h" 5
  5141.  
  5142.  
  5143.  
  5144.  
  5145. # 1218 "dinclude:amiga20/intuition/intuition.h" 4
  5146.  
  5147. # 1218 "dinclude:amiga20/intuition/intuition.h" 4
  5148.  
  5149.  
  5150.  
  5151.  
  5152. # 1 "dinclude:amiga20/intuition/preferences.h" 5
  5153.  
  5154.  
  5155.  
  5156.  
  5157.  
  5158.  
  5159.  
  5160.  
  5161.  
  5162.  
  5163.  
  5164.  
  5165.  
  5166.  
  5167.  
  5168.  
  5169.  
  5170.  
  5171.  
  5172.  
  5173.  
  5174.  
  5175.  
  5176.  
  5177.  
  5178.  
  5179.  
  5180.  
  5181.  
  5182.  
  5183.  
  5184.  
  5185.  
  5186.  
  5187.  
  5188.  
  5189.  
  5190.  
  5191.  
  5192.  
  5193.  
  5194.  
  5195.  
  5196. struct Preferences
  5197. {
  5198.      
  5199.     BYTE FontHeight;             
  5200.  
  5201.      
  5202.     UBYTE PrinterPort;             
  5203.  
  5204.      
  5205.     UWORD BaudRate;             
  5206.  
  5207.      
  5208.     struct timeval KeyRptSpeed;         
  5209.     struct timeval KeyRptDelay;         
  5210.     struct timeval DoubleClick;         
  5211.  
  5212.      
  5213.     UWORD PointerMatrix[(1 + 16 + 1) * 2];     
  5214.     BYTE XOffset;             
  5215.     BYTE YOffset;             
  5216.     UWORD color17;             
  5217.     UWORD color18;             
  5218.     UWORD color19;             
  5219.     UWORD PointerTicks;             
  5220.  
  5221.      
  5222.     UWORD color0;             
  5223.     UWORD color1;             
  5224.     UWORD color2;             
  5225.     UWORD color3;             
  5226.  
  5227.      
  5228.     BYTE ViewXOffset;             
  5229.     BYTE ViewYOffset;             
  5230.     WORD ViewInitX, ViewInitY;         
  5231.  
  5232.     BOOL EnableCLI;             
  5233.  
  5234.      
  5235.     UWORD PrinterType;             
  5236.     UBYTE PrinterFilename[30]; 
  5237.  
  5238.      
  5239.     UWORD PrintPitch;             
  5240.     UWORD PrintQuality;             
  5241.     UWORD PrintSpacing;             
  5242.     UWORD PrintLeftMargin;         
  5243.     UWORD PrintRightMargin;         
  5244.     UWORD PrintImage;             
  5245.     UWORD PrintAspect;             
  5246.     UWORD PrintShade;             
  5247.     WORD PrintThreshold;         
  5248.  
  5249.      
  5250.     UWORD PaperSize;             
  5251.     UWORD PaperLength;             
  5252.     UWORD PaperType;             
  5253.  
  5254.      
  5255.      
  5256.     UBYTE   SerRWBits;      
  5257.               
  5258.     UBYTE   SerStopBuf;   
  5259.               
  5260.     UBYTE   SerParShk;      
  5261.               
  5262.     UBYTE   LaceWB;      
  5263.  
  5264.     UBYTE   WorkName[30];   
  5265.  
  5266.     BYTE    RowSizeChange;     
  5267.     BYTE    ColumnSizeChange;
  5268.  
  5269.     UWORD    PrintFlags;     
  5270.     UWORD    PrintMaxWidth;     
  5271.     UWORD    PrintMaxHeight;     
  5272.     UBYTE    PrintDensity;     
  5273.     UBYTE    PrintXOffset;     
  5274.  
  5275.     UWORD    wb_Width;         
  5276.     UWORD    wb_Height;         
  5277.     UBYTE    wb_Depth;         
  5278.  
  5279.     UBYTE    ext_size;         
  5280.                  
  5281. };
  5282.  
  5283.  
  5284.  
  5285.  
  5286.  
  5287.  
  5288.  
  5289.  
  5290.  
  5291.  
  5292.  
  5293.  
  5294.  
  5295.  
  5296.  
  5297.  
  5298.  
  5299.  
  5300.  
  5301.  
  5302.  
  5303.  
  5304.  
  5305.  
  5306.  
  5307.  
  5308.  
  5309.  
  5310.  
  5311.  
  5312.  
  5313.  
  5314.  
  5315.  
  5316.  
  5317.  
  5318.  
  5319.  
  5320.  
  5321.  
  5322.  
  5323.  
  5324.  
  5325.  
  5326.  
  5327.  
  5328.  
  5329.  
  5330.  
  5331.  
  5332.  
  5333.  
  5334.  
  5335.  
  5336.  
  5337.  
  5338.  
  5339.  
  5340.  
  5341.  
  5342.  
  5343.  
  5344.  
  5345.  
  5346.  
  5347.  
  5348.  
  5349.  
  5350.  
  5351.  
  5352.  
  5353.  
  5354.  
  5355.  
  5356.  
  5357.  
  5358.  
  5359.  
  5360.  
  5361.  
  5362.  
  5363.  
  5364.  
  5365.  
  5366.  
  5367.  
  5368.  
  5369.  
  5370.  
  5371.  
  5372.  
  5373.  
  5374.  
  5375.  
  5376.  
  5377.  
  5378.  
  5379.  
  5380.  
  5381.  
  5382.  
  5383.  
  5384.  
  5385.  
  5386.  
  5387.  
  5388.  
  5389.  
  5390.  
  5391.  
  5392.  
  5393.  
  5394.  
  5395.  
  5396.  
  5397.  
  5398.  
  5399.  
  5400.  
  5401.  
  5402.  
  5403.  
  5404.  
  5405.  
  5406.  
  5407.  
  5408.  
  5409.  
  5410.  
  5411.  
  5412.  
  5413.  
  5414.  
  5415.  
  5416.  
  5417.  
  5418.  
  5419.  
  5420.  
  5421.  
  5422. # 1222 "dinclude:amiga20/intuition/intuition.h" 4
  5423.  
  5424. # 1222 "dinclude:amiga20/intuition/intuition.h" 4
  5425.  
  5426.  
  5427.  
  5428.  
  5429.  
  5430.  
  5431.  
  5432.  
  5433.  
  5434. struct Remember
  5435. {
  5436.     struct Remember *NextRemember;
  5437.     ULONG RememberSize;
  5438.     UBYTE *Memory;
  5439. };
  5440.  
  5441.  
  5442.  
  5443.  
  5444. struct ColorSpec {
  5445.     WORD    ColorIndex;     
  5446.     UWORD    Red;         
  5447.     UWORD    Green;         
  5448.     UWORD    Blue;         
  5449. };
  5450.  
  5451.  
  5452.  
  5453.  
  5454. struct EasyStruct {
  5455.     ULONG    es_StructSize;     
  5456.     ULONG    es_Flags;     
  5457.     UBYTE    *es_Title;     
  5458.     UBYTE    *es_TextFormat;     
  5459.     UBYTE    *es_GadgetFormat;  
  5460. };
  5461.  
  5462.  
  5463.  
  5464.  
  5465.  
  5466.  
  5467.  
  5468.  
  5469.  
  5470.  
  5471.  
  5472.  
  5473.  
  5474.  
  5475.  
  5476.  
  5477.  
  5478.  
  5479.  
  5480.  
  5481.  
  5482.  
  5483.  
  5484.  
  5485.  
  5486.  
  5487.  
  5488.  
  5489.  
  5490.  
  5491.  
  5492.  
  5493.  
  5494.  
  5495.  
  5496.  
  5497.  
  5498.  
  5499.  
  5500.  
  5501.  
  5502.  
  5503.  
  5504.  
  5505.  
  5506.  
  5507.  
  5508.  
  5509.  
  5510.  
  5511.  
  5512.  
  5513.  
  5514.  
  5515.  
  5516.  
  5517.  
  5518.  
  5519.  
  5520.  
  5521.  
  5522.  
  5523.  
  5524.  
  5525.  
  5526.  
  5527.  
  5528.  
  5529.  
  5530.  
  5531.  
  5532.  
  5533.  
  5534.  
  5535.  
  5536.  
  5537.  
  5538.  
  5539.  
  5540.  
  5541.  
  5542.  
  5543.  
  5544.  
  5545.  
  5546.  
  5547.  
  5548.  
  5549.  
  5550.  
  5551.  
  5552.  
  5553.  
  5554.  
  5555.  
  5556.  
  5557.  
  5558.  
  5559.  
  5560.  
  5561.  
  5562.  
  5563.  
  5564.  
  5565.  
  5566. # 25 "dinclude:amiga20/intuition/intuitionbase.h" 3
  5567.  
  5568. # 25 "dinclude:amiga20/intuition/intuitionbase.h" 3
  5569.  
  5570.  
  5571.  
  5572.  
  5573.  
  5574.  
  5575.  
  5576.  
  5577.  
  5578.  
  5579.  
  5580.  
  5581.  
  5582.  
  5583.  
  5584.  
  5585.  
  5586.  
  5587.  
  5588.  
  5589.  
  5590.  
  5591.  
  5592.  
  5593.  
  5594.  
  5595.  
  5596.  
  5597.  
  5598.  
  5599.  
  5600.  
  5601.  
  5602.  
  5603.  
  5604.  
  5605.  
  5606.  
  5607.  
  5608.  
  5609.  
  5610.  
  5611.  
  5612. struct IntuitionBase
  5613. {
  5614.     struct Library LibNode;
  5615.  
  5616.     struct View ViewLord;
  5617.  
  5618.     struct Window *ActiveWindow;
  5619.     struct Screen *ActiveScreen;
  5620.  
  5621.     
  5622.  
  5623.  
  5624.     struct Screen *FirstScreen;  
  5625.  
  5626.     ULONG Flags;     
  5627.     WORD    MouseY, MouseX;
  5628.              
  5629.  
  5630.     ULONG Seconds;     
  5631.     ULONG Micros;     
  5632.  
  5633.     
  5634.  
  5635.  
  5636.  
  5637. };
  5638.  
  5639.  
  5640.  
  5641.  
  5642. # 15 "local/defs.h" 2
  5643.  
  5644. # 15 "local/defs.h" 2
  5645.  
  5646. # 1 "dinclude:amiga20/intuition/gadgetclass.h" 3
  5647.  
  5648.  
  5649.  
  5650.  
  5651.  
  5652.  
  5653.  
  5654.  
  5655.  
  5656.  
  5657.  
  5658.  
  5659.  
  5660.  
  5661.  
  5662.  
  5663.  
  5664.  
  5665.  
  5666.  
  5667.  
  5668.  
  5669.  
  5670.  
  5671.  
  5672.  
  5673.  
  5674.  
  5675.  
  5676.  
  5677.  
  5678.  
  5679.  
  5680.  
  5681.  
  5682.  
  5683.  
  5684.  
  5685.  
  5686.  
  5687.  
  5688.  
  5689.  
  5690.  
  5691.  
  5692.  
  5693.  
  5694.  
  5695.  
  5696.  
  5697.  
  5698.  
  5699.  
  5700.  
  5701.  
  5702.  
  5703.  
  5704.  
  5705.  
  5706.  
  5707.  
  5708.  
  5709.      
  5710.  
  5711.      
  5712.  
  5713.      
  5714.  
  5715.  
  5716.     
  5717.  
  5718.  
  5719.  
  5720.  
  5721.  
  5722.  
  5723.       
  5724.  
  5725.  
  5726.     
  5727.  
  5728.  
  5729.  
  5730.  
  5731.  
  5732.      
  5733.  
  5734.  
  5735.     
  5736.  
  5737.  
  5738.  
  5739.  
  5740.     
  5741.  
  5742.  
  5743.  
  5744.  
  5745.  
  5746.  
  5747.  
  5748.  
  5749.      
  5750.  
  5751.  
  5752.  
  5753.  
  5754.  
  5755.  
  5756.  
  5757.  
  5758.  
  5759.  
  5760.  
  5761.  
  5762.  
  5763.  
  5764.  
  5765.  
  5766.  
  5767.  
  5768.  
  5769.  
  5770.  
  5771.  
  5772.  
  5773.  
  5774.  
  5775.  
  5776.  
  5777.  
  5778.  
  5779.  
  5780.  
  5781.  
  5782.  
  5783.      
  5784.  
  5785.  
  5786.  
  5787.  
  5788.     
  5789.  
  5790.  
  5791.  
  5792.  
  5793.  
  5794.  
  5795.  
  5796.  
  5797.  
  5798.  
  5799.  
  5800.  
  5801.  
  5802.  
  5803.  
  5804.  
  5805.  
  5806.  
  5807.  
  5808.  
  5809.  
  5810.  
  5811.  
  5812.  
  5813.  
  5814.  
  5815.  
  5816.  
  5817.  
  5818.  
  5819.  
  5820.  
  5821.  
  5822. struct gpHitTest {
  5823.     ULONG        MethodID;
  5824.     struct GadgetInfo    *gpht_GInfo;
  5825.     struct {
  5826.     WORD    X;
  5827.     WORD    Y;
  5828.     }            gpht_Mouse;
  5829. };
  5830.  
  5831.  
  5832.  
  5833.  
  5834. struct gpRender {
  5835.     ULONG        MethodID;
  5836.     struct GadgetInfo    *gpr_GInfo;     
  5837.     struct RastPort    *gpr_RPort;     
  5838.     LONG        gpr_Redraw;     
  5839. };
  5840.  
  5841.  
  5842.  
  5843.  
  5844.  
  5845.  
  5846.  
  5847. struct gpInput {
  5848.     ULONG        MethodID;
  5849.     struct GadgetInfo    *gpi_GInfo;
  5850.     struct InputEvent    *gpi_IEvent;
  5851.     LONG        *gpi_Termination;
  5852.     struct {
  5853.     WORD    X;
  5854.     WORD    Y;
  5855.     }            gpi_Mouse;
  5856. };
  5857.  
  5858.  
  5859.  
  5860.  
  5861.  
  5862.  
  5863.  
  5864.  
  5865.  
  5866.  
  5867.  
  5868.  
  5869.  
  5870.  
  5871.  
  5872.  
  5873.  
  5874.  
  5875.  
  5876.  
  5877. struct gpGoInactive {
  5878.     ULONG        MethodID;
  5879.     struct GadgetInfo    *gpgi_GInfo;
  5880.  
  5881.      
  5882.     ULONG        gpgi_Abort;    
  5883.  
  5884.  
  5885.  
  5886. };
  5887.  
  5888.  
  5889.  
  5890.  
  5891.  
  5892.  
  5893.  
  5894.  
  5895.  
  5896. # 16 "local/defs.h" 2
  5897.  
  5898. # 16 "local/defs.h" 2
  5899.  
  5900. # 1 "dinclude:amiga20/libraries/gadtools.h" 3
  5901.  
  5902.  
  5903.  
  5904.  
  5905.  
  5906.  
  5907.  
  5908.  
  5909.  
  5910.  
  5911.  
  5912.  
  5913.  
  5914.  
  5915.  
  5916.  
  5917.  
  5918.  
  5919.  
  5920.  
  5921.  
  5922.  
  5923.  
  5924.  
  5925.  
  5926.  
  5927.  
  5928.  
  5929.  
  5930.  
  5931.  
  5932.  
  5933.  
  5934.  
  5935.  
  5936.  
  5937.  
  5938.  
  5939.  
  5940.  
  5941.  
  5942.  
  5943.  
  5944.  
  5945.  
  5946.  
  5947.  
  5948.  
  5949.  
  5950.  
  5951.  
  5952.  
  5953.  
  5954.  
  5955.  
  5956.  
  5957.  
  5958.  
  5959.  
  5960.  
  5961.  
  5962.  
  5963.  
  5964.  
  5965.  
  5966.  
  5967.  
  5968.  
  5969.  
  5970.  
  5971.  
  5972.  
  5973.  
  5974.  
  5975.  
  5976.  
  5977.  
  5978.  
  5979.  
  5980.  
  5981.  
  5982.  
  5983.  
  5984.  
  5985.  
  5986.  
  5987.  
  5988.  
  5989.  
  5990.  
  5991.  
  5992.  
  5993.  
  5994. struct NewGadget
  5995.     {
  5996.     WORD ng_LeftEdge, ng_TopEdge;     
  5997.     WORD ng_Width, ng_Height;         
  5998.     UBYTE *ng_GadgetText;         
  5999.     struct TextAttr *ng_TextAttr;     
  6000.     UWORD ng_GadgetID;             
  6001.     ULONG ng_Flags;             
  6002.     APTR ng_VisualInfo;             
  6003.     APTR ng_UserData;             
  6004.     };
  6005.  
  6006.  
  6007.  
  6008.  
  6009.  
  6010.  
  6011.  
  6012.  
  6013.  
  6014.  
  6015.  
  6016.  
  6017.  
  6018.  
  6019.  
  6020.  
  6021.  
  6022.  
  6023. struct NewMenu
  6024.     {
  6025.     UBYTE nm_Type;         
  6026.     STRPTR nm_Label;         
  6027.     STRPTR nm_CommKey;         
  6028.     UWORD nm_Flags;         
  6029.     LONG nm_MutualExclude;     
  6030.     APTR nm_UserData;         
  6031.     };
  6032.  
  6033.  
  6034.  
  6035.  
  6036.  
  6037.  
  6038.  
  6039.  
  6040.  
  6041.  
  6042.  
  6043.  
  6044.  
  6045.  
  6046.  
  6047.  
  6048.  
  6049.  
  6050.  
  6051.  
  6052.  
  6053.  
  6054.  
  6055.  
  6056.  
  6057.  
  6058.  
  6059.  
  6060.  
  6061.  
  6062.  
  6063.  
  6064.  
  6065.  
  6066.  
  6067.  
  6068.  
  6069.  
  6070.  
  6071.  
  6072.  
  6073.  
  6074.  
  6075.  
  6076.  
  6077.  
  6078.  
  6079.  
  6080.  
  6081.  
  6082.  
  6083.  
  6084.  
  6085.  
  6086.  
  6087.  
  6088.  
  6089.  
  6090.  
  6091.  
  6092.  
  6093.  
  6094.  
  6095.  
  6096.  
  6097.  
  6098.  
  6099.  
  6100.  
  6101.  
  6102.  
  6103.  
  6104.  
  6105.  
  6106.  
  6107.  
  6108.  
  6109.  
  6110.  
  6111.  
  6112.  
  6113.  
  6114.  
  6115.  
  6116.  
  6117.  
  6118.  
  6119.  
  6120.  
  6121.  
  6122.  
  6123.  
  6124.  
  6125.  
  6126.  
  6127.  
  6128.  
  6129.  
  6130.  
  6131.  
  6132.  
  6133.  
  6134.  
  6135.  
  6136.  
  6137.  
  6138.  
  6139.  
  6140.  
  6141.  
  6142.  
  6143.  
  6144.  
  6145.  
  6146.  
  6147.  
  6148.  
  6149.  
  6150.  
  6151.  
  6152.  
  6153.  
  6154.  
  6155.  
  6156.  
  6157.  
  6158.  
  6159.  
  6160.  
  6161.  
  6162.  
  6163.  
  6164.  
  6165.  
  6166.  
  6167.  
  6168.  
  6169.  
  6170.  
  6171.  
  6172.  
  6173.  
  6174.  
  6175.  
  6176.  
  6177.  
  6178.  
  6179.  
  6180.  
  6181.  
  6182.  
  6183.  
  6184.  
  6185.  
  6186.  
  6187.  
  6188.  
  6189.  
  6190.  
  6191.  
  6192.  
  6193.  
  6194.  
  6195. # 17 "local/defs.h" 2
  6196.  
  6197. # 17 "local/defs.h" 2
  6198.  
  6199. # 1 "dinclude:amiga20/graphics/gfxbase.h" 3
  6200.  
  6201.  
  6202.  
  6203.  
  6204.  
  6205.  
  6206.  
  6207.  
  6208.  
  6209.  
  6210.  
  6211.  
  6212.  
  6213.  
  6214.  
  6215.  
  6216.  
  6217.  
  6218.  
  6219.  
  6220.  
  6221.  
  6222.  
  6223.  
  6224. struct GfxBase
  6225. {
  6226.     struct Library  LibNode;
  6227.     struct View *ActiView;
  6228.     struct copinit *copinit;     
  6229.     long    *cia;         
  6230.     long    *blitter;         
  6231.     UWORD   *LOFlist;
  6232.     UWORD   *SHFlist;
  6233.     struct bltnode *blthd,*blttl;
  6234.     struct bltnode *bsblthd,*bsblttl;
  6235.     struct Interrupt vbsrv,timsrv,bltsrv;
  6236.     struct List     TextFonts;
  6237.     struct  TextFont *DefaultFont;
  6238.     UWORD  Modes;             
  6239.     BYTE VBlank;
  6240.     BYTE Debug;
  6241.     WORD BeamSync;
  6242.     WORD system_bplcon0;     
  6243.     UBYTE   SpriteReserved;
  6244.     UBYTE   bytereserved;
  6245.     UWORD   Flags;
  6246.     WORD   BlitLock;
  6247.     WORD    BlitNest;
  6248.  
  6249.     struct    List    BlitWaitQ;
  6250.     struct    Task    *BlitOwner;
  6251.     struct    List    TOF_WaitQ;
  6252.     UWORD    DisplayFlags;         
  6253.                      
  6254.     struct SimpleSprite **SimpleSprites;
  6255.     UWORD    MaxDisplayRow;         
  6256.     UWORD    MaxDisplayColumn;     
  6257.     UWORD    NormalDisplayRows;
  6258.     UWORD    NormalDisplayColumns;
  6259.      
  6260.     UWORD    NormalDPMX;         
  6261.     UWORD    NormalDPMY;         
  6262.     struct    SignalSemaphore *LastChanceMemory;
  6263.     UWORD    *LCMptr;
  6264.     UWORD    MicrosPerLine;         
  6265.     UWORD    MinDisplayColumn;
  6266.     UBYTE    ChipRevBits0;
  6267.     UBYTE    crb_reserved[5];
  6268.     UWORD    monitor_id;         
  6269.     ULONG    hedley[8];
  6270.     ULONG    hedley_sprites[8] ;     
  6271.     ULONG    hedley_sprites1[8] ;         
  6272.     WORD    hedley_count;
  6273.     UWORD    hedley_flags;
  6274.     WORD    hedley_tmp;
  6275.     LONG    *hash_table;
  6276.     UWORD    current_tot_rows;
  6277.     UWORD    current_tot_cclks;
  6278.     UBYTE    hedley_hint;
  6279.     UBYTE    hedley_hint2;
  6280.     ULONG    nreserved[4];
  6281.     LONG    *a2024_sync_raster;
  6282.     WORD   control_delta_pal;
  6283.     WORD   control_delta_ntsc;
  6284.     struct    MonitorSpec *current_monitor;
  6285.     struct    List MonitorList;
  6286.     struct    MonitorSpec *default_monitor;
  6287.     struct    SignalSemaphore *MonitorListSemaphore;
  6288.     void    *DisplayInfoDataBase;
  6289.     struct    SignalSemaphore *ActiViewCprSemaphore;
  6290.     ULONG    *UtilityBase;         
  6291.     ULONG    *ExecBase;         
  6292.     };
  6293.  
  6294.  
  6295.  
  6296.  
  6297.  
  6298.  
  6299.  
  6300.  
  6301.  
  6302.  
  6303.  
  6304.  
  6305.  
  6306.  
  6307.  
  6308.  
  6309.  
  6310.  
  6311.  
  6312.  
  6313.  
  6314. # 18 "local/defs.h" 2
  6315.  
  6316. # 18 "local/defs.h" 2
  6317.  
  6318. # 1 "dinclude:amiga20/graphics/view.h" 3
  6319.  
  6320.  
  6321.  
  6322.  
  6323.  
  6324.  
  6325.  
  6326.  
  6327.  
  6328.  
  6329.  
  6330.  
  6331.  
  6332.  
  6333.  
  6334.  
  6335.  
  6336.  
  6337.  
  6338.  
  6339.  
  6340.  
  6341.  
  6342.  
  6343.  
  6344.  
  6345.  
  6346.  
  6347.  
  6348.  
  6349.  
  6350.  
  6351.  
  6352.  
  6353.  
  6354.  
  6355.  
  6356.  
  6357.  
  6358.  
  6359.  
  6360.  
  6361.  
  6362.  
  6363.  
  6364.  
  6365.  
  6366.  
  6367.  
  6368.  
  6369.  
  6370.  
  6371.  
  6372.  
  6373.  
  6374.  
  6375.  
  6376.  
  6377.  
  6378.  
  6379.  
  6380.  
  6381.  
  6382.  
  6383.  
  6384.  
  6385.  
  6386.  
  6387.  
  6388.  
  6389.  
  6390.  
  6391.  
  6392.  
  6393.  
  6394.  
  6395.  
  6396.  
  6397.  
  6398.  
  6399.  
  6400.  
  6401.  
  6402.  
  6403.  
  6404.  
  6405.  
  6406.  
  6407.  
  6408.  
  6409.  
  6410.  
  6411.  
  6412.  
  6413.  
  6414.  
  6415.  
  6416.  
  6417.  
  6418.  
  6419.  
  6420.  
  6421.  
  6422.  
  6423.  
  6424.  
  6425.  
  6426.  
  6427.  
  6428.  
  6429.  
  6430.  
  6431.  
  6432.  
  6433.  
  6434.  
  6435.  
  6436.  
  6437.  
  6438.  
  6439.  
  6440.  
  6441.  
  6442.  
  6443.  
  6444.  
  6445.  
  6446.  
  6447.  
  6448.  
  6449.  
  6450.  
  6451.  
  6452.  
  6453.  
  6454.  
  6455.  
  6456.  
  6457.  
  6458.  
  6459.  
  6460.  
  6461.  
  6462.  
  6463.  
  6464.  
  6465.  
  6466.  
  6467. # 19 "local/defs.h" 2
  6468.  
  6469. # 19 "local/defs.h" 2
  6470.  
  6471. # 1 "dinclude:amiga20/graphics/displayinfo.h" 3
  6472.  
  6473.  
  6474.  
  6475.  
  6476.  
  6477.  
  6478.  
  6479.  
  6480.  
  6481.  
  6482.  
  6483.  
  6484.  
  6485.  
  6486.  
  6487.  
  6488.  
  6489.  
  6490.  
  6491.  
  6492.  
  6493.  
  6494.  
  6495.  
  6496.  
  6497.  
  6498.  
  6499.  
  6500.  
  6501.  
  6502.  
  6503.  
  6504. typedef APTR DisplayInfoHandle;
  6505.  
  6506.  
  6507.  
  6508.  
  6509.  
  6510.  
  6511.  
  6512.  
  6513. struct QueryHeader
  6514. {
  6515.     ULONG    StructID;     
  6516.     ULONG    DisplayID;     
  6517.     ULONG    SkipID;         
  6518.     ULONG    Length;         
  6519. };
  6520.  
  6521. struct DisplayInfo
  6522. {
  6523.     struct    QueryHeader Header;
  6524.     UWORD    NotAvailable;     
  6525.     ULONG    PropertyFlags;     
  6526.     Point    Resolution;     
  6527.     UWORD    PixelSpeed;     
  6528.     UWORD    NumStdSprites;     
  6529.     UWORD    PaletteRange;     
  6530.     Point    SpriteResolution;  
  6531.     UBYTE    pad[4];
  6532.     ULONG    reserved[2];     
  6533. };
  6534.  
  6535.  
  6536.  
  6537.  
  6538.  
  6539.  
  6540.  
  6541.  
  6542.  
  6543.  
  6544.  
  6545.  
  6546.  
  6547.  
  6548.  
  6549.  
  6550.  
  6551.  
  6552.  
  6553.  
  6554.  
  6555.  
  6556.  
  6557.  
  6558.  
  6559.  
  6560.  
  6561.  
  6562.  
  6563. struct DimensionInfo
  6564. {
  6565.     struct    QueryHeader Header;
  6566.     UWORD    MaxDepth;           
  6567.     UWORD    MinRasterWidth;        
  6568.     UWORD    MinRasterHeight;       
  6569.     UWORD    MaxRasterWidth;        
  6570.     UWORD    MaxRasterHeight;       
  6571.     struct    Rectangle   Nominal;   
  6572.     struct    Rectangle   MaxOScan;  
  6573.     struct    Rectangle VideoOScan;  
  6574.     struct    Rectangle   TxtOScan;  
  6575.     struct    Rectangle   StdOScan;  
  6576.     UBYTE    pad[14];
  6577.     ULONG    reserved[2];           
  6578. };
  6579.  
  6580. struct MonitorInfo
  6581. {
  6582.     struct    QueryHeader Header;
  6583.     struct    MonitorSpec  *Mspc;    
  6584.     Point    ViewPosition;           
  6585.     Point    ViewResolution;        
  6586.     struct    Rectangle ViewPositionRange;   
  6587.     UWORD    TotalRows;           
  6588.     UWORD    TotalColorClocks;      
  6589.     UWORD    MinRow;           
  6590.     WORD    Compatibility;           
  6591.     UBYTE    pad[36];
  6592.     ULONG    reserved[2];           
  6593. };
  6594.  
  6595.  
  6596.  
  6597.  
  6598.  
  6599.  
  6600.  
  6601.  
  6602.  
  6603. struct NameInfo
  6604. {
  6605.     struct    QueryHeader Header;
  6606.     UBYTE    Name[32];
  6607.     ULONG    reserved[2];           
  6608. };
  6609.  
  6610.  
  6611.  
  6612.  
  6613.  
  6614.  
  6615.  
  6616.  
  6617.  
  6618.  
  6619.  
  6620.  
  6621.  
  6622.  
  6623.  
  6624.  
  6625.  
  6626.  
  6627.  
  6628.  
  6629.  
  6630.  
  6631.  
  6632.  
  6633.  
  6634.  
  6635.  
  6636.  
  6637.  
  6638.  
  6639.  
  6640.  
  6641.  
  6642.  
  6643.  
  6644.  
  6645.  
  6646.  
  6647.  
  6648.  
  6649.  
  6650.  
  6651.  
  6652.  
  6653.  
  6654.  
  6655.  
  6656.  
  6657.  
  6658.  
  6659.  
  6660.  
  6661.  
  6662.  
  6663.  
  6664.  
  6665.  
  6666.  
  6667.  
  6668.  
  6669.  
  6670.  
  6671.  
  6672.  
  6673.  
  6674.  
  6675.  
  6676.  
  6677.  
  6678.  
  6679.  
  6680.  
  6681.  
  6682.  
  6683.  
  6684.  
  6685.  
  6686.  
  6687.  
  6688.  
  6689. # 20 "local/defs.h" 2
  6690.  
  6691. # 20 "local/defs.h" 2
  6692.  
  6693. # 1 "dinclude:amiga20/graphics/gfxmacros.h" 3
  6694.  
  6695.  
  6696.  
  6697.  
  6698.  
  6699.  
  6700.  
  6701.  
  6702.  
  6703.  
  6704.  
  6705.  
  6706.  
  6707.  
  6708.  
  6709.  
  6710.  
  6711.  
  6712.  
  6713.  
  6714.  
  6715.  
  6716.  
  6717.  
  6718.  
  6719.  
  6720.  
  6721.  
  6722.  
  6723.  
  6724.  
  6725.  
  6726.  
  6727.  
  6728.  
  6729.  
  6730.  
  6731.  
  6732.  
  6733.  
  6734.  
  6735.  
  6736.  
  6737.  
  6738.  
  6739.  
  6740.  
  6741. # 21 "local/defs.h" 2
  6742.  
  6743. # 21 "local/defs.h" 2
  6744.  
  6745. # 1 "dinclude:amiga20/devices/console.h" 3
  6746.  
  6747.  
  6748.  
  6749.  
  6750.  
  6751.  
  6752.  
  6753.  
  6754.  
  6755.  
  6756.  
  6757.  
  6758.  
  6759.  
  6760.  
  6761.  
  6762.  
  6763.  
  6764.  
  6765.  
  6766.  
  6767.  
  6768.  
  6769.  
  6770.  
  6771.  
  6772.  
  6773.  
  6774.  
  6775.  
  6776.  
  6777.  
  6778.  
  6779.  
  6780.  
  6781.  
  6782.  
  6783.  
  6784.  
  6785.  
  6786.  
  6787.  
  6788.  
  6789.  
  6790.  
  6791.  
  6792.  
  6793.  
  6794.  
  6795.  
  6796.  
  6797.  
  6798.  
  6799.  
  6800.  
  6801.  
  6802.  
  6803.  
  6804.  
  6805.  
  6806.  
  6807.  
  6808.  
  6809.  
  6810.  
  6811.  
  6812.  
  6813.  
  6814.  
  6815.  
  6816.  
  6817.  
  6818.  
  6819.  
  6820.  
  6821.  
  6822.  
  6823.  
  6824.  
  6825.  
  6826.  
  6827.  
  6828.  
  6829.  
  6830.  
  6831.  
  6832.  
  6833.  
  6834.  
  6835.  
  6836.  
  6837.  
  6838.  
  6839.  
  6840.  
  6841.  
  6842.  
  6843.  
  6844.  
  6845.  
  6846.  
  6847.  
  6848.  
  6849. # 22 "local/defs.h" 2
  6850.  
  6851. # 22 "local/defs.h" 2
  6852.  
  6853. # 1 "dinclude:amiga20/devices/conunit.h" 3
  6854.  
  6855.  
  6856.  
  6857.  
  6858.  
  6859.  
  6860.  
  6861.  
  6862.  
  6863.  
  6864.  
  6865.  
  6866.  
  6867.  
  6868.  
  6869.  
  6870.  
  6871.  
  6872.  
  6873.  
  6874.  
  6875.  
  6876.  
  6877.  
  6878.  
  6879.  
  6880.  
  6881.  
  6882. # 1 "dinclude:amiga20/devices/keymap.h" 4
  6883.  
  6884.  
  6885.  
  6886.  
  6887.  
  6888.  
  6889.  
  6890.  
  6891.  
  6892.  
  6893.  
  6894.  
  6895.  
  6896.  
  6897.  
  6898.  
  6899.  
  6900.  
  6901.  
  6902.  
  6903.  
  6904.  
  6905. struct     KeyMap {
  6906.     UBYTE   *km_LoKeyMapTypes;
  6907.     ULONG   *km_LoKeyMap;
  6908.     UBYTE   *km_LoCapsable;
  6909.     UBYTE   *km_LoRepeatable;
  6910.     UBYTE   *km_HiKeyMapTypes;
  6911.     ULONG   *km_HiKeyMap;
  6912.     UBYTE   *km_HiCapsable;
  6913.     UBYTE   *km_HiRepeatable;
  6914. };
  6915.  
  6916. struct    KeyMapNode {
  6917.     struct Node kn_Node;     
  6918.     struct KeyMap kn_KeyMap;
  6919. };
  6920.  
  6921.  
  6922. struct    KeyMapResource {
  6923.     struct Node kr_Node;
  6924.     struct List kr_List;     
  6925. };
  6926.  
  6927.  
  6928.  
  6929.  
  6930.  
  6931.  
  6932.  
  6933.  
  6934.  
  6935.  
  6936.  
  6937.  
  6938.  
  6939.  
  6940.  
  6941.  
  6942.  
  6943.  
  6944.  
  6945.  
  6946.  
  6947.  
  6948.  
  6949.  
  6950.  
  6951.  
  6952.  
  6953.  
  6954.  
  6955.  
  6956.  
  6957.  
  6958.  
  6959.  
  6960. # 29 "dinclude:amiga20/devices/conunit.h" 3
  6961.  
  6962. # 29 "dinclude:amiga20/devices/conunit.h" 3
  6963.  
  6964.  
  6965.  
  6966.  
  6967.  
  6968.  
  6969.  
  6970.  
  6971.  
  6972.  
  6973.  
  6974.  
  6975.  
  6976.  
  6977.  
  6978.  
  6979.  
  6980.  
  6981.  
  6982.  
  6983.  
  6984.  
  6985.  
  6986.  
  6987.  
  6988.  
  6989. struct    ConUnit {
  6990.     struct  MsgPort cu_MP;
  6991.      
  6992.     struct  Window *cu_Window;     
  6993.     WORD    cu_XCP;         
  6994.     WORD    cu_YCP;
  6995.     WORD    cu_XMax;         
  6996.     WORD    cu_YMax;
  6997.     WORD    cu_XRSize;         
  6998.     WORD    cu_YRSize;
  6999.     WORD    cu_XROrigin;     
  7000.     WORD    cu_YROrigin;
  7001.     WORD    cu_XRExtant;     
  7002.     WORD    cu_YRExtant;
  7003.     WORD    cu_XMinShrink;     
  7004.     WORD    cu_YMinShrink;
  7005.     WORD    cu_XCCP;         
  7006.     WORD    cu_YCCP;
  7007.  
  7008.      
  7009.      
  7010.     struct  KeyMap cu_KeyMapStruct;
  7011.      
  7012.     UWORD   cu_TabStops[80];  
  7013.  
  7014.      
  7015.     BYTE    cu_Mask;
  7016.     BYTE    cu_FgPen;
  7017.     BYTE    cu_BgPen;
  7018.     BYTE    cu_AOLPen;
  7019.     BYTE    cu_DrawMode;
  7020.     BYTE    cu_Obsolete1;     
  7021.     APTR    cu_Obsolete2;     
  7022.     UBYTE   cu_Minterms[8];     
  7023.     struct  TextFont *cu_Font;
  7024.     UBYTE   cu_AlgoStyle;
  7025.     UBYTE   cu_TxFlags;
  7026.     UWORD   cu_TxHeight;
  7027.     UWORD   cu_TxWidth;
  7028.     UWORD   cu_TxBaseline;
  7029.     WORD    cu_TxSpacing;
  7030.  
  7031.      
  7032.     UBYTE   cu_Modes[(((20+1)+1)+7)/8];     
  7033.     UBYTE   cu_RawEvents[(0x15+8)/8];
  7034. };
  7035.  
  7036.  
  7037.  
  7038. # 23 "local/defs.h" 2
  7039.  
  7040. # 23 "local/defs.h" 2
  7041.  
  7042. # 1 "dinclude:amiga20/devices/serial.h" 3
  7043.  
  7044.  
  7045.  
  7046.  
  7047.  
  7048.  
  7049.  
  7050.  
  7051.  
  7052.  
  7053.  
  7054.  
  7055.  
  7056.  
  7057.  
  7058.  
  7059.  
  7060.  
  7061.             
  7062.             
  7063.  
  7064.  struct  IOTArray {
  7065.     ULONG TermArray0;
  7066.     ULONG TermArray1;
  7067. };
  7068.  
  7069.  
  7070.  
  7071.  
  7072.  
  7073.  
  7074.  
  7075.  
  7076.  
  7077.  
  7078.  
  7079.  
  7080.  struct  IOExtSer {
  7081.     struct     IOStdReq IOSer;
  7082.  
  7083.  
  7084.  
  7085.  
  7086.  
  7087.  
  7088.  
  7089.  
  7090.  
  7091.  
  7092.  
  7093.  
  7094.  
  7095.  
  7096.  
  7097.  
  7098.  
  7099.  
  7100.  
  7101.  
  7102.  
  7103.  
  7104.    ULONG   io_CtlChar;       
  7105.    ULONG   io_RBufLen;       
  7106.    ULONG   io_ExtFlags;    
  7107.    ULONG   io_Baud;       
  7108.    ULONG   io_BrkTime;       
  7109.    struct  IOTArray io_TermArray;  
  7110.    UBYTE   io_ReadLen;       
  7111.    UBYTE   io_WriteLen;    
  7112.    UBYTE   io_StopBits;    
  7113.    UBYTE   io_SerFlags;    
  7114.    UWORD   io_Status;
  7115. };
  7116.    
  7117.  
  7118.  
  7119.  
  7120.  
  7121.  
  7122.  
  7123.  
  7124.  
  7125.  
  7126.  
  7127.  
  7128.  
  7129.  
  7130.  
  7131.  
  7132.  
  7133.  
  7134.  
  7135.  
  7136.  
  7137.  
  7138.  
  7139.  
  7140.  
  7141.  
  7142.  
  7143.  
  7144.  
  7145.  
  7146.  
  7147.  
  7148.  
  7149.  
  7150.  
  7151.  
  7152.  
  7153.  
  7154.  
  7155.  
  7156.  
  7157.  
  7158.  
  7159.  
  7160.  
  7161.  
  7162.  
  7163.  
  7164.  
  7165.  
  7166.  
  7167.  
  7168.  
  7169.  
  7170.  
  7171.  
  7172.  
  7173.                  
  7174.  
  7175.  
  7176.  
  7177.  
  7178.  
  7179.  
  7180.  
  7181.  
  7182.  
  7183.  
  7184.  
  7185.  
  7186.  
  7187.  
  7188.  
  7189.  
  7190.  
  7191.  
  7192.  
  7193.  
  7194.  
  7195.  
  7196.  
  7197.  
  7198.  
  7199.  
  7200.  
  7201.  
  7202.  
  7203.  
  7204.  
  7205.  
  7206.  
  7207.  
  7208.  
  7209.  
  7210.  
  7211.  
  7212.  
  7213.  
  7214.  
  7215.  
  7216.  
  7217.  
  7218.  
  7219.  
  7220.  
  7221.  
  7222.  
  7223.  
  7224.  
  7225.  
  7226. # 24 "local/defs.h" 2
  7227.  
  7228. # 24 "local/defs.h" 2
  7229.  
  7230. # 1 "dinclude:amiga20/dos/dos.h" 3
  7231.  
  7232.  
  7233.  
  7234.  
  7235.  
  7236.  
  7237.  
  7238.  
  7239.  
  7240.  
  7241.  
  7242.  
  7243.  
  7244.  
  7245.  
  7246.  
  7247.  
  7248.  
  7249.  
  7250.  
  7251.  
  7252.  
  7253.  
  7254.  
  7255.  
  7256.  
  7257.  
  7258.  
  7259.  
  7260.  
  7261.  
  7262.  
  7263.  
  7264.  
  7265.  
  7266.  
  7267.  
  7268.  
  7269.  
  7270.  
  7271.  
  7272.  
  7273.  
  7274.  
  7275.  
  7276.  
  7277.  
  7278.  
  7279.  
  7280.  
  7281.  
  7282.  
  7283.  
  7284. struct DateStamp {
  7285.    LONG     ds_Days;           
  7286.    LONG     ds_Minute;           
  7287.    LONG     ds_Tick;           
  7288. };  
  7289.  
  7290.  
  7291.  
  7292.  
  7293. struct FileInfoBlock {
  7294.    LONG      fib_DiskKey;
  7295.    LONG      fib_DirEntryType;  
  7296.  
  7297.    char      fib_FileName[108];  
  7298.    LONG      fib_Protection;     
  7299.    LONG      fib_EntryType;
  7300.    LONG      fib_Size;          
  7301.    LONG      fib_NumBlocks;      
  7302.    struct DateStamp fib_Date; 
  7303.    char      fib_Comment[80];   
  7304.    char      fib_Reserved[36];
  7305. };  
  7306.  
  7307.  
  7308.  
  7309.  
  7310.  
  7311.  
  7312.  
  7313.  
  7314.  
  7315.  
  7316.  
  7317.  
  7318.  
  7319.  
  7320.  
  7321.  
  7322.  
  7323.  
  7324.  
  7325.  
  7326.  
  7327.  
  7328.  
  7329.  
  7330.  
  7331.  
  7332. typedef long  BPTR;             
  7333. typedef long  BSTR;             
  7334.  
  7335.  
  7336.  
  7337.  
  7338.  
  7339.  
  7340.  
  7341.  
  7342.  
  7343.  
  7344.  
  7345.  
  7346.  
  7347.  
  7348.  
  7349. struct InfoData {
  7350.    LONG      id_NumSoftErrors;     
  7351.    LONG      id_UnitNumber;     
  7352.    LONG      id_DiskState;         
  7353.    LONG      id_NumBlocks;         
  7354.    LONG      id_NumBlocksUsed;     
  7355.    LONG      id_BytesPerBlock;
  7356.    LONG      id_DiskType;         
  7357.    BPTR      id_VolumeNode;     
  7358.    LONG      id_InUse;         
  7359. };  
  7360.  
  7361.  
  7362.      
  7363.  
  7364.  
  7365.  
  7366.  
  7367.      
  7368.  
  7369.  
  7370.  
  7371.  
  7372.  
  7373.  
  7374.  
  7375.  
  7376.  
  7377.  
  7378.  
  7379.  
  7380.  
  7381.  
  7382.  
  7383.  
  7384.  
  7385.  
  7386.  
  7387.  
  7388.  
  7389.  
  7390.  
  7391.  
  7392.  
  7393.  
  7394.  
  7395.  
  7396.  
  7397.  
  7398.  
  7399.  
  7400.  
  7401.  
  7402.  
  7403.  
  7404.  
  7405.  
  7406.  
  7407.  
  7408.  
  7409.  
  7410.  
  7411.  
  7412.  
  7413.  
  7414.  
  7415.  
  7416.  
  7417.  
  7418.  
  7419.  
  7420.  
  7421.  
  7422.  
  7423.  
  7424.  
  7425.  
  7426.  
  7427.  
  7428.  
  7429.  
  7430.  
  7431.  
  7432.  
  7433.  
  7434.  
  7435.  
  7436.  
  7437.  
  7438.  
  7439.  
  7440.  
  7441.  
  7442.  
  7443.  
  7444.  
  7445.  
  7446.  
  7447.  
  7448.  
  7449.  
  7450.  
  7451.  
  7452.  
  7453.  
  7454.  
  7455.  
  7456.  
  7457.  
  7458.  
  7459.  
  7460.  
  7461.  
  7462.  
  7463.  
  7464.  
  7465.  
  7466.  
  7467.  
  7468.  
  7469.  
  7470.  
  7471.  
  7472.  
  7473.  
  7474.  
  7475.  
  7476.  
  7477. # 25 "local/defs.h" 2
  7478.  
  7479. # 25 "local/defs.h" 2
  7480.  
  7481. # 1 "dinclude:amiga20/dos/dosextens.h" 3
  7482.  
  7483.  
  7484.  
  7485.  
  7486.  
  7487.  
  7488.  
  7489.  
  7490.  
  7491.  
  7492.  
  7493.  
  7494.  
  7495.  
  7496.  
  7497.  
  7498.  
  7499.  
  7500.  
  7501.  
  7502.  
  7503.  
  7504.  
  7505.  
  7506.  
  7507.  
  7508.  
  7509.  
  7510.  
  7511.  
  7512.  
  7513.  
  7514.  
  7515.  
  7516.  
  7517.  
  7518.  
  7519.  
  7520. struct Process {
  7521.     struct  Task    pr_Task;
  7522.     struct  MsgPort pr_MsgPort;  
  7523.     WORD    pr_Pad;         
  7524.     BPTR    pr_SegList;         
  7525.     LONG    pr_StackSize;     
  7526.     APTR    pr_GlobVec;         
  7527.     LONG    pr_TaskNum;         
  7528.     BPTR    pr_StackBase;     
  7529.     LONG    pr_Result2;         
  7530.     BPTR    pr_CurrentDir;     
  7531.     BPTR    pr_CIS;         
  7532.     BPTR    pr_COS;         
  7533.     APTR    pr_ConsoleTask;     
  7534.     APTR    pr_FileSystemTask;     
  7535.     BPTR    pr_CLI;         
  7536.     APTR    pr_ReturnAddr;     
  7537.     APTR    pr_PktWait;         
  7538.     APTR    pr_WindowPtr;     
  7539.  
  7540.      
  7541.     BPTR    pr_HomeDir;         
  7542.     LONG    pr_Flags;         
  7543.     void    (*pr_ExitCode)();     
  7544.     LONG    pr_ExitData;     
  7545.     UBYTE   *pr_Arguments;     
  7546.     struct MinList pr_LocalVars;  
  7547.     ULONG   pr_ShellPrivate;     
  7548.     BPTR    pr_CES;         
  7549. };   
  7550.  
  7551.  
  7552.  
  7553.  
  7554.  
  7555.  
  7556.  
  7557.  
  7558.  
  7559.  
  7560.  
  7561.  
  7562.  
  7563.  
  7564.  
  7565.  
  7566.  
  7567.  
  7568.  
  7569.  
  7570.  
  7571.  
  7572. struct FileHandle {
  7573.    struct Message *fh_Link;      
  7574.    struct MsgPort *fh_Port;      
  7575.    struct MsgPort *fh_Type;     
  7576.  
  7577.    LONG fh_Buf;
  7578.    LONG fh_Pos;
  7579.    LONG fh_End;
  7580.    LONG fh_Funcs;
  7581.  
  7582.    LONG fh_Func2;
  7583.    LONG fh_Func3;
  7584.    LONG fh_Args;
  7585.  
  7586.    LONG fh_Arg2;
  7587. };  
  7588.  
  7589.  
  7590.  
  7591. struct DosPacket {
  7592.    struct Message *dp_Link;      
  7593.    struct MsgPort *dp_Port;      
  7594.                   
  7595.    LONG dp_Type;         
  7596.  
  7597.  
  7598.    LONG dp_Res1;         
  7599.  
  7600.  
  7601.  
  7602.    LONG dp_Res2;         
  7603.  
  7604.  
  7605.  
  7606.  
  7607.  
  7608.  
  7609.    LONG dp_Arg1;
  7610.    LONG dp_Arg2;
  7611.    LONG dp_Arg3;
  7612.    LONG dp_Arg4;
  7613.    LONG dp_Arg5;
  7614.    LONG dp_Arg6;
  7615.    LONG dp_Arg7;
  7616. };  
  7617.  
  7618.  
  7619.  
  7620.  
  7621.  
  7622. struct StandardPacket {
  7623.    struct Message   sp_Msg;
  7624.    struct DosPacket sp_Pkt;
  7625. };  
  7626.  
  7627.  
  7628.  
  7629.  
  7630.  
  7631.  
  7632.  
  7633.  
  7634.  
  7635.  
  7636.  
  7637.  
  7638.  
  7639.  
  7640.  
  7641.  
  7642.  
  7643.  
  7644.  
  7645.  
  7646.  
  7647.  
  7648.  
  7649.  
  7650.  
  7651.  
  7652.  
  7653.  
  7654.  
  7655.  
  7656.  
  7657.  
  7658.  
  7659.  
  7660.  
  7661.  
  7662.  
  7663.  
  7664.  
  7665.  
  7666.  
  7667.  
  7668.  
  7669.  
  7670.  
  7671.  
  7672.  
  7673.  
  7674.  
  7675.  
  7676.  
  7677.  
  7678.  
  7679.  
  7680.  
  7681.  
  7682.  
  7683.  
  7684.  
  7685.  
  7686.  
  7687.  
  7688.  
  7689.  
  7690.  
  7691.  
  7692.  
  7693.  
  7694.  
  7695.  
  7696.  
  7697.  
  7698.  
  7699. struct ErrorString {
  7700.     LONG  *estr_Nums;
  7701.     UBYTE *estr_Strings;
  7702. };
  7703.  
  7704.  
  7705.  
  7706.  
  7707.  
  7708.  
  7709. struct DosLibrary {
  7710.     struct Library dl_lib;
  7711.     struct RootNode *dl_Root;  
  7712.     APTR    dl_GV;           
  7713.     LONG    dl_A2;           
  7714.     LONG    dl_A5;
  7715.     LONG    dl_A6;
  7716.     struct ErrorString *dl_Errors;   
  7717.     struct timerequest *dl_TimeReq;  
  7718.     struct Library     *dl_UtilityBase;  
  7719. };   
  7720.  
  7721.  
  7722.  
  7723. struct RootNode {
  7724.     BPTR    rn_TaskArray;         
  7725.  
  7726.  
  7727.     BPTR    rn_ConsoleSegment;  
  7728.     struct  DateStamp rn_Time;  
  7729.     LONG    rn_RestartSeg;      
  7730.     BPTR    rn_Info;            
  7731.     BPTR    rn_FileHandlerSegment;  
  7732.     struct MinList rn_CliList;  
  7733.                     
  7734.     struct MsgPort *rn_BootProc;  
  7735.     BPTR    rn_ShellSegment;    
  7736.     LONG    rn_Flags;            
  7737. };   
  7738.  
  7739.  
  7740.  
  7741.  
  7742.  
  7743.  
  7744.  
  7745. struct CliProcList {
  7746.     struct MinNode cpl_Node;
  7747.     LONG cpl_First;          
  7748.     struct MsgPort **cpl_Array;
  7749.                  
  7750.  
  7751.  
  7752.  
  7753. };
  7754.  
  7755. struct DosInfo {
  7756.     BPTR    di_McName;            
  7757.  
  7758.     BPTR    di_DevInfo;            
  7759.     BPTR    di_Devices;            
  7760.     BPTR    di_Handlers;        
  7761.     APTR    di_NetHand;            
  7762.     struct  SignalSemaphore di_DevLock;        
  7763.     struct  SignalSemaphore di_EntryLock;   
  7764.     struct  SignalSemaphore di_DeleteLock;  
  7765. };   
  7766.  
  7767.  
  7768.  
  7769.  
  7770. struct Segment {
  7771.     BPTR seg_Next;
  7772.     LONG seg_UC;
  7773.     BPTR seg_Seg;
  7774.     UBYTE seg_Name[4];     
  7775. };
  7776.  
  7777.  
  7778.  
  7779.  
  7780.  
  7781.  
  7782.  
  7783.  
  7784.  
  7785. struct CommandLineInterface {
  7786.     LONG   cli_Result2;            
  7787.     BSTR   cli_SetName;            
  7788.     BPTR   cli_CommandDir;      
  7789.     LONG   cli_ReturnCode;      
  7790.     BSTR   cli_CommandName;     
  7791.     LONG   cli_FailLevel;       
  7792.     BSTR   cli_Prompt;            
  7793.     BPTR   cli_StandardInput;   
  7794.     BPTR   cli_CurrentInput;    
  7795.     BSTR   cli_CommandFile;     
  7796.     LONG   cli_Interactive;     
  7797.     LONG   cli_Background;      
  7798.     BPTR   cli_CurrentOutput;   
  7799.     LONG   cli_DefaultStack;    
  7800.     BPTR   cli_StandardOutput;  
  7801.     BPTR   cli_Module;            
  7802. };   
  7803.  
  7804.  
  7805.  
  7806.  
  7807.  
  7808.  
  7809.  
  7810.  
  7811.  
  7812.  
  7813. struct DeviceList {
  7814.     BPTR        dl_Next;     
  7815.     LONG        dl_Type;     
  7816.     struct MsgPort *    dl_Task;     
  7817.     BPTR        dl_Lock;     
  7818.     struct DateStamp    dl_VolumeDate;     
  7819.     BPTR        dl_LockList;     
  7820.     LONG        dl_DiskType;     
  7821.     LONG        dl_unused;
  7822.     BSTR        dl_Name;     
  7823. };
  7824.  
  7825.  
  7826.  
  7827. struct          DevInfo {
  7828.     BPTR  dvi_Next;
  7829.     LONG  dvi_Type;
  7830.     APTR  dvi_Task;
  7831.     BPTR  dvi_Lock;
  7832.     BSTR  dvi_Handler;
  7833.     LONG  dvi_StackSize;
  7834.     LONG  dvi_Priority;
  7835.     LONG  dvi_Startup;
  7836.     BPTR  dvi_SegList;
  7837.     BPTR  dvi_GlobVec;
  7838.     BSTR  dvi_Name;
  7839. };
  7840.  
  7841.  
  7842.  
  7843. struct DosList {
  7844.     BPTR        dol_Next;      
  7845.     LONG        dol_Type;      
  7846.     struct MsgPort     *dol_Task;      
  7847.     BPTR        dol_Lock;
  7848.     union {
  7849.     struct {
  7850.     BSTR    dol_Handler;     
  7851.     LONG    dol_StackSize;     
  7852.     LONG    dol_Priority;     
  7853.     ULONG    dol_Startup;     
  7854.     BPTR    dol_SegList;     
  7855.     BPTR    dol_GlobVec;    
  7856.  
  7857.  
  7858.     } dol_handler;
  7859.  
  7860.     struct {
  7861.     struct DateStamp    dol_VolumeDate;      
  7862.     BPTR            dol_LockList;      
  7863.     LONG            dol_DiskType;      
  7864.     } dol_volume;
  7865.  
  7866.     struct {
  7867.     UBYTE    *dol_AssignName;      
  7868.     struct AssignList *dol_List;  
  7869.     } dol_assign;
  7870.  
  7871.     } dol_misc;
  7872.  
  7873.     BSTR        dol_Name;      
  7874.     };
  7875.  
  7876.  
  7877.  
  7878. struct AssignList {
  7879.     struct AssignList *al_Next;
  7880.     BPTR           al_Lock;
  7881. };
  7882.  
  7883.  
  7884.  
  7885.  
  7886.  
  7887.  
  7888.  
  7889.  
  7890.  
  7891.  
  7892. struct DevProc {
  7893.     struct MsgPort *dvp_Port;
  7894.     BPTR        dvp_Lock;
  7895.     ULONG        dvp_Flags;
  7896.     struct DosList *dvp_DevNode;     
  7897. };
  7898.  
  7899.  
  7900.  
  7901.  
  7902.  
  7903.  
  7904.  
  7905.  
  7906.  
  7907.  
  7908.  
  7909.  
  7910.  
  7911.  
  7912.  
  7913.  
  7914.  
  7915.  
  7916.  
  7917.  
  7918.  
  7919.  
  7920.  
  7921.  
  7922.  
  7923.  
  7924.  
  7925.  
  7926.  
  7927. struct FileLock {
  7928.     BPTR        fl_Link;     
  7929.     LONG        fl_Key;         
  7930.     LONG        fl_Access;     
  7931.     struct MsgPort *    fl_Task;     
  7932.     BPTR        fl_Volume;     
  7933. };
  7934.  
  7935.  
  7936.  
  7937.  
  7938.  
  7939.  
  7940.  
  7941.  
  7942.  
  7943.  
  7944.  
  7945.  
  7946.  
  7947.  
  7948.  
  7949.  
  7950.  
  7951.  
  7952.  
  7953.  
  7954.  
  7955.  
  7956.  
  7957.  
  7958.  
  7959.  
  7960.  
  7961.  
  7962.  
  7963.  
  7964.  
  7965.  
  7966. # 26 "local/defs.h" 2
  7967.  
  7968. # 26 "local/defs.h" 2
  7969.  
  7970. # 1 "dinclude:amiga20/dos/filehandler.h" 3
  7971.  
  7972.  
  7973.  
  7974.  
  7975.  
  7976.  
  7977.  
  7978.  
  7979.  
  7980.  
  7981.  
  7982.  
  7983.  
  7984.  
  7985.  
  7986.  
  7987.  
  7988.  
  7989.  
  7990.  
  7991.  
  7992.  
  7993.  
  7994.  
  7995.  
  7996.  
  7997.  
  7998.  
  7999. struct DosEnvec {
  8000.     ULONG de_TableSize;          
  8001.     ULONG de_SizeBlock;          
  8002.     ULONG de_SecOrg;          
  8003.     ULONG de_Surfaces;          
  8004.     ULONG de_SectorPerBlock;  
  8005.     ULONG de_BlocksPerTrack;  
  8006.     ULONG de_Reserved;          
  8007.     ULONG de_PreAlloc;          
  8008.     ULONG de_Interleave;      
  8009.     ULONG de_LowCyl;          
  8010.     ULONG de_HighCyl;          
  8011.     ULONG de_NumBuffers;      
  8012.     ULONG de_BufMemType;      
  8013.     ULONG de_MaxTransfer;     
  8014.     ULONG de_Mask;          
  8015.     LONG  de_BootPri;          
  8016.     ULONG de_DosType;         
  8017.  
  8018.  
  8019.     ULONG de_Baud;          
  8020.     ULONG de_Control;          
  8021.     ULONG de_BootBlocks;      
  8022.  
  8023. };
  8024.  
  8025.  
  8026.  
  8027.  
  8028.  
  8029.  
  8030.  
  8031.  
  8032.  
  8033.  
  8034.  
  8035.  
  8036.  
  8037.  
  8038.  
  8039.  
  8040.  
  8041.  
  8042.  
  8043.  
  8044.  
  8045.  
  8046.  
  8047.  
  8048.  
  8049.  
  8050.  
  8051.  
  8052.  
  8053.  
  8054.  
  8055.  
  8056. struct FileSysStartupMsg {
  8057.     ULONG    fssm_Unit;     
  8058.     BSTR    fssm_Device;     
  8059.     BPTR    fssm_Environ;     
  8060.     ULONG    fssm_Flags;     
  8061. };
  8062.  
  8063.  
  8064.  
  8065.  
  8066.  
  8067.  
  8068.  
  8069.  
  8070.  
  8071. struct DeviceNode {
  8072.     BPTR    dn_Next;     
  8073.     ULONG    dn_Type;     
  8074.     struct MsgPort *dn_Task;    
  8075.  
  8076.  
  8077.     BPTR    dn_Lock;     
  8078.     BSTR    dn_Handler;     
  8079.     ULONG    dn_StackSize;     
  8080.     LONG    dn_Priority;     
  8081.     BPTR    dn_Startup;     
  8082.     BPTR    dn_SegList;    
  8083.  
  8084.     BPTR    dn_GlobalVec;    
  8085.  
  8086.  
  8087.  
  8088.  
  8089.  
  8090.  
  8091.  
  8092.     BSTR    dn_Name;     
  8093. };
  8094.  
  8095.  
  8096.  
  8097. # 27 "local/defs.h" 2
  8098.  
  8099. # 27 "local/defs.h" 2
  8100.  
  8101. # 1 "dinclude:amiga20/dos/doshunks.h" 3
  8102.  
  8103.  
  8104.  
  8105.  
  8106.  
  8107.  
  8108.  
  8109.  
  8110.  
  8111.  
  8112.  
  8113.  
  8114.  
  8115.  
  8116.  
  8117.  
  8118.  
  8119.  
  8120.  
  8121.  
  8122.  
  8123.  
  8124.  
  8125.  
  8126.  
  8127.  
  8128.  
  8129.  
  8130.  
  8131.  
  8132.  
  8133.  
  8134.  
  8135.  
  8136.  
  8137.  
  8138.  
  8139.  
  8140.  
  8141.  
  8142.  
  8143.  
  8144.  
  8145.  
  8146.  
  8147.  
  8148.  
  8149.  
  8150.  
  8151.  
  8152.  
  8153.  
  8154.  
  8155.  
  8156. # 28 "local/defs.h" 2
  8157.  
  8158. # 28 "local/defs.h" 2
  8159.  
  8160. # 1 "dinclude:amiga20/workbench/workbench.h" 3
  8161.  
  8162.  
  8163.  
  8164.  
  8165.  
  8166.  
  8167.  
  8168.  
  8169.  
  8170.  
  8171.  
  8172.  
  8173.  
  8174.  
  8175.  
  8176.  
  8177.  
  8178.  
  8179.  
  8180.  
  8181.  
  8182.  
  8183.  
  8184.  
  8185.  
  8186.  
  8187.  
  8188.  
  8189.  
  8190.  
  8191.  
  8192.  
  8193.  
  8194.  
  8195.  
  8196.  
  8197.  
  8198.  
  8199.  
  8200.  
  8201.  
  8202.  
  8203.  
  8204. struct OldDrawerData {  
  8205.     struct NewWindow    dd_NewWindow;     
  8206.     LONG        dd_CurrentX;     
  8207.     LONG        dd_CurrentY;     
  8208. };
  8209.  
  8210.  
  8211.  
  8212. struct DrawerData {
  8213.     struct NewWindow    dd_NewWindow;     
  8214.     LONG        dd_CurrentX;     
  8215.     LONG        dd_CurrentY;     
  8216.     ULONG        dd_Flags;     
  8217.     UWORD        dd_ViewModes;     
  8218. };
  8219.  
  8220.  
  8221.  
  8222. struct DiskObject {
  8223.     UWORD        do_Magic;  
  8224.     UWORD        do_Version;  
  8225.     struct Gadget    do_Gadget;     
  8226.     UBYTE        do_Type;
  8227.     char *        do_DefaultTool;
  8228.     char **        do_ToolTypes;
  8229.     LONG        do_CurrentX;
  8230.     LONG        do_CurrentY;
  8231.     struct DrawerData *    do_DrawerData;
  8232.     char *        do_ToolWindow;     
  8233.     LONG        do_StackSize;     
  8234.  
  8235. };
  8236.  
  8237.  
  8238.  
  8239.  
  8240.  
  8241.  
  8242.  
  8243. struct FreeList {
  8244.     WORD        fl_NumFree;
  8245.     struct List        fl_MemList;
  8246. };
  8247.  
  8248.  
  8249.  
  8250.  
  8251.  
  8252.  
  8253.  
  8254.  
  8255.  
  8256.  
  8257.  
  8258.  
  8259.  
  8260.  
  8261.  
  8262.  
  8263.  
  8264.  
  8265.  
  8266.  
  8267.  
  8268.  
  8269.  
  8270.  
  8271.  
  8272.  
  8273.  
  8274.  
  8275.  
  8276.  
  8277.  
  8278.  
  8279.  
  8280.  
  8281.  
  8282.  
  8283.  
  8284.  
  8285.  
  8286. struct AppMessage {
  8287.     struct Message am_Message;     
  8288.     UWORD am_Type;         
  8289.     ULONG am_UserData;         
  8290.     ULONG am_ID;         
  8291.     LONG am_NumArgs;         
  8292.     struct WBArg *am_ArgList;     
  8293.     UWORD am_Version;         
  8294.     UWORD am_Class;         
  8295.     WORD am_MouseX;         
  8296.     WORD am_MouseY;         
  8297.     ULONG am_Seconds;         
  8298.     ULONG am_Micros;         
  8299.     ULONG am_Reserved[8];     
  8300. };
  8301.  
  8302.  
  8303.  
  8304.  
  8305.  
  8306. struct    AppWindow    { void *aw_PRIVATE;  };
  8307. struct    AppIcon        { void *ai_PRIVATE;  };
  8308. struct        AppMenuItem    { void *ami_PRIVATE; };
  8309.  
  8310.  
  8311.  
  8312. # 29 "local/defs.h" 2
  8313.  
  8314. # 29 "local/defs.h" 2
  8315.  
  8316. # 1 "dinclude:amiga20/workbench/icon.h" 3
  8317.  
  8318.  
  8319.  
  8320.  
  8321.  
  8322.  
  8323.  
  8324.  
  8325.  
  8326.  
  8327.  
  8328.  
  8329.  
  8330.  
  8331.  
  8332.  
  8333.  
  8334.  
  8335. # 30 "local/defs.h" 2
  8336.  
  8337. # 30 "local/defs.h" 2
  8338.  
  8339. # 1 "dinclude:amiga20/clib/macros.h" 3
  8340.  
  8341.  
  8342.  
  8343.  
  8344.  
  8345.  
  8346.  
  8347.  
  8348.  
  8349.  
  8350.  
  8351.  
  8352.  
  8353.  
  8354.  
  8355.  
  8356.  
  8357.  
  8358.  
  8359.  
  8360. # 31 "local/defs.h" 2
  8361.  
  8362. # 31 "local/defs.h" 2
  8363.  
  8364.  
  8365. # 1 "dinclude:stdlib.h" 3
  8366.  
  8367.  
  8368.  
  8369.  
  8370.  
  8371.  
  8372.  
  8373.  
  8374.  
  8375.  
  8376.  
  8377.  
  8378. # 1 "dinclude:stddef.h" 4
  8379.  
  8380.  
  8381.  
  8382.  
  8383.  
  8384.  
  8385.  
  8386.  
  8387.  
  8388.  
  8389.  
  8390.  
  8391.  
  8392.  
  8393.  
  8394.  
  8395. typedef int ptrdiff_t;
  8396. typedef unsigned int size_t;
  8397. typedef char wchar_t;
  8398.  
  8399.  
  8400.  
  8401.  
  8402. # 13 "dinclude:stdlib.h" 3
  8403.  
  8404. # 13 "dinclude:stdlib.h" 3
  8405.  
  8406.  
  8407. typedef struct div_t {
  8408.     int     quot;
  8409.     int     rem;
  8410. } div_t;
  8411.  
  8412. typedef struct ldiv_t {
  8413.     long    quot;
  8414.     long    rem;
  8415. } ldiv_t;
  8416.  
  8417.  
  8418.  
  8419.  
  8420.  
  8421.  
  8422.  
  8423.  
  8424.  
  8425.  
  8426.  
  8427.  
  8428.  
  8429.  
  8430. extern void abort(void);
  8431.  
  8432.  
  8433.  
  8434.  
  8435.  
  8436. extern int atexit(void (*)(void));
  8437.  
  8438. extern double atof(const char *);
  8439. extern double strtod(const char *, char **);
  8440.  
  8441. extern int atoi(const char *);
  8442. extern long atol(const char *);
  8443. extern void *bsearch(const void *, const void *, size_t, size_t, int (*)(const void *, const void *));
  8444. extern void *calloc(size_t, size_t);
  8445. extern div_t div(int, int);
  8446. extern void exit(int);
  8447. extern void free(void *);
  8448. extern char *getenv(const char *);
  8449. extern int  setenv(const char *, const char *);
  8450. extern long labs(long);
  8451. extern ldiv_t ldiv(long, long);
  8452. extern void *malloc(size_t);
  8453. extern int mblen(const char *, size_t);
  8454. extern size_t mbstowcs(wchar_t *, const char *, size_t);
  8455. extern int mbtowc(wchar_t *, const char *, size_t);
  8456. extern void qsort(void *, size_t, size_t, int (*)(const void *, const void *));
  8457. extern int rand(void);
  8458. extern void srand(unsigned int);
  8459. extern void *realloc(void *, size_t);
  8460. extern long strtol(const char *,char **, int);
  8461. extern unsigned long strtoul(const char *, char **, int);
  8462. extern int system(const char *);
  8463. extern int system13(const char *);   
  8464. extern size_t wcstombs(wchar_t *, const char *, size_t);
  8465. extern int wctomb(char *, wchar_t);
  8466.  
  8467.  
  8468.  
  8469.  
  8470.  
  8471. extern int getfnl(const char *, char *, size_t, int);
  8472. extern int mkdir(const char *);
  8473. extern int expand_args(int, const char **, int *, char ***);
  8474. extern int (*onbreak(int (*)()))(void);
  8475. extern __stkargs void _exit(int);
  8476. extern void chkabort(void);
  8477. extern void stack_abort(void);
  8478. extern void sleep(int);
  8479.  
  8480. extern int _SystemBoolTag;
  8481. extern int _SystemBoolTagValue;
  8482.  
  8483.  
  8484.  
  8485.  
  8486. # 33 "local/defs.h" 2
  8487.  
  8488. # 33 "local/defs.h" 2
  8489.  
  8490. # 1 "dinclude:stdio.h" 3
  8491.  
  8492.  
  8493.  
  8494.  
  8495.  
  8496.  
  8497.  
  8498.  
  8499.  
  8500.  
  8501.  
  8502.  
  8503.  
  8504.  
  8505.  
  8506. typedef void *va_list;
  8507.  
  8508.  
  8509. typedef long    fpos_t;
  8510.  
  8511. typedef struct FILE {
  8512.     struct FILE *sd_Next;
  8513.     struct FILE **sd_Prev;
  8514.     unsigned char   *sd_RBuf;
  8515.     unsigned char   *sd_RPtr;
  8516.     unsigned char   *sd_WBuf;
  8517.     unsigned char   *sd_WPtr;
  8518.     long    sd_BufSiz;
  8519.     int     sd_RLeft;
  8520.     int     sd_WLeft;
  8521.     int     sd_Flags;
  8522.     int     sd_Error;         
  8523.     fpos_t  sd_Offset;         
  8524.     int     sd_Fd;
  8525.     short   sd_UC;         
  8526.     char    *sd_Name;         
  8527. } FILE;
  8528.  
  8529. typedef struct _IOFDS {
  8530.     long    fd_Fh;
  8531.     long    fd_Flags;
  8532.     long    (*fd_Exec)(long, int, void *, void *);    
  8533.     char    *fd_FileName;    
  8534. } _IOFDS;
  8535.  
  8536. extern FILE _Iob[3];             
  8537. extern FILE *_Iod;             
  8538.  
  8539. extern _IOFDS _IoStaticFD[3];         
  8540. extern _IOFDS *_IoFD;             
  8541. extern short _IoFDLimit;
  8542. extern int _bufsiz;             
  8543.  
  8544.  
  8545.  
  8546.  
  8547.  
  8548.  
  8549.  
  8550.  
  8551.  
  8552.  
  8553.  
  8554.  
  8555.  
  8556.  
  8557.  
  8558.  
  8559.  
  8560.  
  8561.  
  8562.  
  8563.  
  8564.  
  8565.  
  8566.  
  8567.  
  8568.  
  8569.  
  8570.  
  8571.  
  8572.  
  8573.  
  8574.  
  8575.  
  8576.  
  8577.  
  8578.  
  8579.  
  8580. extern void perror(const char *);
  8581.  
  8582. extern int    fclose(FILE *);
  8583. extern int    fflush(FILE *);
  8584. extern FILE * fopen(const char *, const char *);
  8585. extern FILE * freopen(const char *, const char *, FILE *);
  8586. extern void   setbuf(FILE *, char *);
  8587. extern int    setvbuf(FILE *, char *, int, size_t);
  8588.  
  8589. extern int    remove(const char *);
  8590. extern int    rename(const char *, const char *);
  8591. extern FILE * tmpfile(void);
  8592. extern char * tmpnam(char *);
  8593.  
  8594. extern int    fgetpos(FILE *, fpos_t *);
  8595. extern int    fseek(FILE *, long, int);
  8596. extern int    fsetpos(FILE *, const fpos_t *);
  8597. extern long   ftell(FILE *);
  8598. extern void   rewind(FILE *);
  8599.  
  8600. extern int    fgetc(FILE *);
  8601. extern char * fgets(char *, int, FILE *);
  8602. extern int    fputc(unsigned char, FILE *);
  8603. extern int    fputs(const char *, FILE *);
  8604.  
  8605.  
  8606.  
  8607.  
  8608.  
  8609.  
  8610.  
  8611.  
  8612.  
  8613.  
  8614.  
  8615.  
  8616.  
  8617.  
  8618.  
  8619.  
  8620.  
  8621.  
  8622.  
  8623.  
  8624. extern char * gets(char *);
  8625. extern int    puts(const char *);
  8626. extern int    ungetc(int, FILE *);
  8627.  
  8628. extern size_t fread(void *, size_t, size_t, FILE *);
  8629. extern size_t fwrite(const void *, size_t, size_t, FILE *);
  8630.  
  8631. extern int    fprintf(FILE *, const char *, ...);
  8632. extern int    fscanf(FILE *, const char *, ...);
  8633. extern int    printf(const char *, ...);
  8634. extern int    scanf(const char *, ...);
  8635. extern int    sprintf(char *, const char *, ...);
  8636. extern int    sscanf(char *, const char *, ...);
  8637.  
  8638. extern int    vfprintf(FILE *, const char *, va_list);
  8639. extern int    vprintf(const char *, va_list);
  8640. extern int    vsprintf(char *, const char *, va_list);
  8641.  
  8642.  
  8643.  
  8644.  
  8645.  
  8646. extern FILE * fdopen(int, const char *);
  8647. extern int    chdir(const char *);
  8648. extern char * getcwd(char *, int);
  8649. extern int    unlink(const char *);
  8650.  
  8651.  
  8652.  
  8653.  
  8654.  
  8655. extern int    fhprintf(long, const char *, ...);
  8656. extern int    vfhprintf(long, const char *, va_list);
  8657.  
  8658.  
  8659.  
  8660.  
  8661. # 34 "local/defs.h" 2
  8662.  
  8663. # 34 "local/defs.h" 2
  8664.  
  8665. # 1 "dinclude:stdarg.h" 3
  8666.  
  8667.  
  8668.  
  8669.  
  8670.  
  8671.  
  8672.  
  8673.  
  8674.  
  8675.  
  8676.  
  8677.  
  8678.  
  8679.  
  8680.  
  8681.  
  8682.  
  8683.  
  8684.  
  8685.  
  8686. # 35 "local/defs.h" 2
  8687.  
  8688. # 35 "local/defs.h" 2
  8689.  
  8690. # 1 "dinclude:fcntl.h" 3
  8691.  
  8692.  
  8693.  
  8694.  
  8695.  
  8696.  
  8697.  
  8698.  
  8699.  
  8700.  
  8701.  
  8702.  
  8703.  
  8704.  
  8705.  
  8706.  
  8707.  
  8708.  
  8709.  
  8710.  
  8711.  
  8712.  
  8713.  
  8714.  
  8715.  
  8716.  
  8717.  
  8718.  
  8719.  
  8720.  
  8721.  
  8722.  
  8723.  
  8724.  
  8725.  
  8726.  
  8727.  
  8728.  
  8729.  
  8730.  
  8731.  
  8732.  
  8733.  
  8734.  
  8735.  
  8736. extern int write(int, const void *, unsigned int);
  8737. extern int read(int, void *, unsigned int);
  8738. extern int close(int);
  8739. extern int open(const char *, int, ...);
  8740. extern int creat(const char *, int);
  8741. extern long lseek(int, long, int);
  8742.  
  8743. extern void *fdtofh(int);
  8744.  
  8745.  
  8746.  
  8747. extern _IOFDS *__getfh(int);         
  8748. extern _IOFDS *_MakeFD(int *);         
  8749.  
  8750.  
  8751.  
  8752.  
  8753.  
  8754.  
  8755. extern int fcntl(int, int, int);
  8756. extern int isatty(int);
  8757. extern int access(const char *, int);
  8758.  
  8759.  
  8760.  
  8761.  
  8762.  
  8763.  
  8764.  
  8765.  
  8766. # 36 "local/defs.h" 2
  8767.  
  8768. # 36 "local/defs.h" 2
  8769.  
  8770. # 1 "dinclude:string.h" 3
  8771.  
  8772.  
  8773.  
  8774.  
  8775.  
  8776.  
  8777.  
  8778.  
  8779.  
  8780.  
  8781.  
  8782.  
  8783.  
  8784.  
  8785.  
  8786. extern int memcmp(const void *, const void *, size_t);
  8787. extern int strcmp(const char *, const char *);
  8788. extern int strcoll(const char *, const char *);
  8789. extern int strncmp(const char *, const char *, size_t);
  8790. extern size_t strxfrm(char *, const char *, size_t);
  8791.  
  8792. extern char *strcat(char *, const char *);
  8793. extern char *strncat(char *, const char *, size_t);
  8794.  
  8795. extern void *memcpy(void *, const void *, size_t);
  8796. extern void *memmove(void *, const void *, size_t);
  8797. extern char *strcpy(char *, const char *);
  8798. extern char *stpcpy(char *, const char *);
  8799. extern char *strncpy(char *, const char *, size_t);
  8800. extern void *memset(void *, int, size_t);
  8801. extern char *strerror(int);
  8802. extern size_t strlen(const char *);
  8803.  
  8804. extern void *memchr(const void *, int, size_t);
  8805. extern char *strchr(const char *, int);
  8806. extern size_t strcspn(const char *, const char *);
  8807. extern char *strpbrk(const char *, const char *);
  8808. extern char *strrchr(const char *, int);
  8809. extern size_t strspn(const char *, const char *);
  8810. extern char *strstr(const char *, const char *);
  8811. extern char *strtok(char *, const char *);
  8812.  
  8813. extern double strtod(const char *, char **);
  8814. extern long   strtol(const char *, char **, int);
  8815. extern unsigned long strtoul(const char *, char **, int);
  8816.  
  8817.  
  8818.  
  8819.  
  8820.  
  8821. extern void *movmem(const void *, const void *, size_t);
  8822. extern void *setmem(void *, size_t, int);
  8823. extern void *cmpmem(const void *, const void *, size_t);
  8824. extern void *clrmem(void *, size_t);
  8825. extern void *bzero(void *, size_t);
  8826. extern void *bcopy(const void *, void *, size_t);
  8827. extern void *bcmp(const void *, const void *, size_t);
  8828. extern char *strupper(char *);
  8829.  
  8830.  
  8831.  
  8832.  
  8833.  
  8834. extern int stricmp(const char *, const char *);
  8835. extern int strnicmp(const char *, const char *, int);
  8836. extern int strbpl(char **, int, const char *);
  8837. extern void strins(char *, const char *);
  8838. extern char *strdup(const char *);
  8839. extern char *stpbrk(const char *, const char *);
  8840. extern const char *stpchr(const char *, char);
  8841.  
  8842.  
  8843.  
  8844.  
  8845.  
  8846. # 37 "local/defs.h" 2
  8847.  
  8848. # 37 "local/defs.h" 2
  8849.  
  8850. # 1 "dinclude:lib/rexx.h" 3
  8851.  
  8852.  
  8853.  
  8854.  
  8855.  
  8856.  
  8857.  
  8858.  
  8859.  
  8860.  
  8861.  
  8862.  
  8863.  
  8864.  
  8865.  
  8866.  
  8867.  
  8868.  
  8869.  
  8870. long PlaceRexxCommand(struct MsgPort *, char *, char **, long *);
  8871. long PlaceRexxCommandDirect(struct MsgPort *, char *, char *, char **, long *);
  8872. void ProcessRexxCommands(struct MsgPort *);
  8873. short CreateGlobalDiceRexxPort(struct MsgPort *, char *);
  8874. short CreateDiceRexxPort(struct MsgPort *, char *);
  8875. void DeleteDiceRexxPort(struct MsgPort *);
  8876. int GetDiceRexxPortSlot(struct MsgPort *, char **);
  8877.  
  8878. extern struct Library *RexxSysBase;  
  8879.  
  8880.  
  8881.  
  8882.  
  8883.  
  8884.  
  8885.  
  8886.  
  8887.  
  8888.  
  8889.  
  8890.  
  8891.  
  8892.  
  8893.  
  8894.  
  8895.  
  8896.  
  8897. long DoRexxCommand(void *rexxmsg, struct MsgPort *port, char *arg0, char **resstr);
  8898.  
  8899. extern char *RexxHostName;
  8900. extern short RexxSigBit;
  8901.  
  8902.  
  8903.  
  8904. # 38 "local/defs.h" 2
  8905.  
  8906. # 38 "local/defs.h" 2
  8907.  
  8908. # 1 "dinclude:lib/bcpl.h" 3
  8909.  
  8910.  
  8911.  
  8912.  
  8913.  
  8914.  
  8915.  
  8916.  
  8917.  
  8918.  
  8919.  
  8920.  
  8921.  
  8922.  
  8923.  
  8924.  
  8925. # 39 "local/defs.h" 2
  8926.  
  8927. # 39 "local/defs.h" 2
  8928.  
  8929. # 1 "dinclude:lib/misc.h" 3
  8930.  
  8931.  
  8932.  
  8933.  
  8934.  
  8935.  
  8936.  
  8937.  
  8938.  
  8939.  
  8940.  
  8941.  
  8942.  
  8943. # 1 "dinclude:stdarg.h" 4
  8944.  
  8945.  
  8946.  
  8947.  
  8948.  
  8949.  
  8950.  
  8951.  
  8952.  
  8953.  
  8954.  
  8955.  
  8956.  
  8957.  
  8958.  
  8959.  
  8960.  
  8961.  
  8962.  
  8963.  
  8964. # 14 "dinclude:lib/misc.h" 3
  8965.  
  8966. # 14 "dinclude:lib/misc.h" 3
  8967.  
  8968.  
  8969.  
  8970. # 1 "dinclude:stdio.h" 4
  8971.  
  8972.  
  8973.  
  8974.  
  8975.  
  8976.  
  8977.  
  8978.  
  8979.  
  8980.  
  8981.  
  8982.  
  8983.  
  8984.  
  8985.  
  8986.  
  8987.  
  8988.  
  8989.  
  8990.  
  8991.  
  8992.  
  8993.  
  8994.  
  8995.  
  8996.  
  8997.  
  8998.  
  8999.  
  9000.  
  9001.  
  9002.  
  9003.  
  9004.  
  9005.  
  9006.  
  9007.  
  9008.  
  9009.  
  9010.  
  9011.  
  9012.  
  9013.  
  9014.  
  9015.  
  9016.  
  9017.  
  9018.  
  9019.  
  9020.  
  9021.  
  9022.  
  9023.  
  9024.  
  9025.  
  9026.  
  9027.  
  9028.  
  9029.  
  9030.  
  9031.  
  9032.  
  9033.  
  9034.  
  9035.  
  9036.  
  9037.  
  9038.  
  9039.  
  9040.  
  9041.  
  9042.  
  9043.  
  9044.  
  9045.  
  9046.  
  9047.  
  9048.  
  9049.  
  9050.  
  9051.  
  9052.  
  9053.  
  9054.  
  9055.  
  9056.  
  9057.  
  9058.  
  9059.  
  9060.  
  9061.  
  9062.  
  9063.  
  9064.  
  9065.  
  9066.  
  9067.  
  9068.  
  9069.  
  9070.  
  9071.  
  9072.  
  9073.  
  9074.  
  9075.  
  9076.  
  9077.  
  9078.  
  9079.  
  9080.  
  9081.  
  9082.  
  9083.  
  9084.  
  9085.  
  9086.  
  9087.  
  9088.  
  9089.  
  9090.  
  9091.  
  9092.  
  9093.  
  9094.  
  9095.  
  9096.  
  9097.  
  9098.  
  9099.  
  9100.  
  9101.  
  9102.  
  9103.  
  9104.  
  9105.  
  9106.  
  9107.  
  9108.  
  9109.  
  9110.  
  9111.  
  9112.  
  9113.  
  9114.  
  9115.  
  9116.  
  9117.  
  9118.  
  9119.  
  9120.  
  9121.  
  9122.  
  9123.  
  9124.  
  9125.  
  9126.  
  9127.  
  9128.  
  9129.  
  9130.  
  9131.  
  9132.  
  9133.  
  9134.  
  9135.  
  9136.  
  9137.  
  9138.  
  9139.  
  9140.  
  9141. # 17 "dinclude:lib/misc.h" 3
  9142.  
  9143. # 17 "dinclude:lib/misc.h" 3
  9144.  
  9145.  
  9146. long rega4(void);
  9147. void __closeall(void);
  9148. void _finitdesc(FILE *, int, int);
  9149. int _parseargs1(char *, int);
  9150. void _parseargs2(char *, char **, int);
  9151. long _SearchResident(char *);
  9152. long _SearchPath(char *);
  9153. __stkargs long _ExecSeg(long, char *, long, void *);
  9154. int exec_dcc(char *, char *);
  9155. int _pfmt(char *, va_list, unsigned int (*)(char *, size_t, size_t, void *), void *);
  9156. int _pfmtone(char, va_list *, unsigned int (*)(char *, size_t, size_t, void *), void *, short, short, short, int);
  9157. int _sfmt(unsigned char *, va_list, int (*)(void *), int (*)(int, void *), void *, int *);
  9158. int _sfmtone(char *, short *, void *, int (*)(void *), void *, short, short, short);
  9159. int __fclose(FILE *);
  9160. int _filbuf(FILE *);
  9161. void _MakeCacheFD(_IOFDS *, void *, long);
  9162. long _CacheFDIoctl(long, int, void *, void *);
  9163. short OpenConsole(const char *);
  9164.  
  9165. __stkargs _slow_bcopy(void *, void *, long);
  9166. __stkargs _slow_bzero(void *, long);
  9167. __stkargs _slow_bset(void *, long, int);
  9168.  
  9169.  
  9170. void _SetWildStack(long);
  9171. void *_ParseWild(const char *, short);
  9172. int _CompWild(const char *, void *, void *);
  9173. void _FreeWild(void *);
  9174.  
  9175.  
  9176. extern long _TimeCompensation;
  9177. extern int _DiceCacheEnable;
  9178.  
  9179.  
  9180.  
  9181. # 40 "local/defs.h" 2
  9182.  
  9183. # 40 "local/defs.h" 2
  9184.  
  9185.  
  9186. # 1 "dinclude:clib/exec_protos.h" 3
  9187.  
  9188.  
  9189.  
  9190.  
  9191. # 1 "dinclude:amiga20/pragmas/config.h" 4
  9192.  
  9193.  
  9194.  
  9195.  
  9196.  
  9197.  
  9198.  
  9199.  
  9200. # 5 "dinclude:clib/exec_protos.h" 3
  9201.  
  9202. # 5 "dinclude:clib/exec_protos.h" 3
  9203.  
  9204. # 1 "dinclude:amiga20/exec/types.h" 4
  9205.  
  9206.  
  9207.  
  9208.  
  9209.  
  9210.  
  9211.  
  9212.  
  9213.  
  9214.  
  9215.  
  9216.  
  9217.  
  9218.  
  9219.  
  9220.  
  9221.  
  9222.  
  9223.  
  9224.  
  9225.  
  9226.  
  9227.  
  9228.  
  9229.  
  9230.  
  9231.  
  9232.  
  9233.  
  9234.  
  9235.  
  9236.  
  9237.  
  9238.  
  9239.  
  9240.  
  9241.  
  9242.  
  9243.  
  9244.  
  9245.  
  9246.  
  9247.  
  9248.  
  9249.  
  9250.  
  9251.  
  9252.  
  9253.  
  9254.  
  9255.  
  9256.  
  9257.  
  9258.  
  9259.  
  9260.  
  9261.  
  9262.  
  9263.  
  9264.  
  9265.  
  9266.  
  9267.  
  9268.  
  9269.  
  9270.  
  9271.  
  9272.  
  9273.  
  9274.  
  9275.  
  9276.  
  9277.  
  9278.  
  9279.  
  9280.  
  9281.  
  9282.  
  9283.  
  9284.  
  9285.  
  9286.  
  9287.  
  9288.  
  9289.  
  9290.  
  9291.  
  9292.  
  9293.  
  9294. # 6 "dinclude:clib/exec_protos.h" 3
  9295.  
  9296. # 6 "dinclude:clib/exec_protos.h" 3
  9297.  
  9298. # 1 "dinclude:amiga20/clib/exec_protos.h" 4
  9299.  
  9300.  
  9301.  
  9302.  
  9303.  
  9304.  
  9305.  
  9306.  
  9307.  
  9308.  
  9309.  
  9310.  
  9311.  
  9312.  
  9313.  
  9314.  
  9315.  
  9316. ULONG Supervisor( unsigned long (*userFunction)() );
  9317.  
  9318.  
  9319. void InitCode( unsigned long startClass, unsigned long version );
  9320. void InitStruct( APTR initTable, APTR memory, unsigned long size );
  9321. struct Library *MakeLibrary( APTR funcInit, APTR structInit,
  9322.     unsigned long (*libInit)(), unsigned long dataSize,
  9323.     unsigned long segList );
  9324. void MakeFunctions( APTR target, APTR functionArray,
  9325.     unsigned long funcDispBase );
  9326. struct Resident *FindResident( UBYTE *name );
  9327. void InitResident( struct Resident *resident, unsigned long segList );
  9328.  
  9329. void Alert( unsigned long alertNum );
  9330. void Debug( unsigned long flags );
  9331.  
  9332. void Disable( void );
  9333. void Enable( void );
  9334. void Forbid( void );
  9335. void Permit( void );
  9336. ULONG SetSR( unsigned long newSR, unsigned long mask );
  9337. APTR SuperState( void );
  9338. void UserState( APTR sysStack );
  9339. struct Interrupt *SetIntVector( long intNumber, struct Interrupt *interrupt );
  9340. void AddIntServer( long intNumber, struct Interrupt *interrupt );
  9341. void RemIntServer( long intNumber, struct Interrupt *interrupt );
  9342. void Cause( struct Interrupt *interrupt );
  9343.  
  9344. APTR Allocate( struct MemHeader *freeList, unsigned long byteSize );
  9345. void Deallocate( struct MemHeader *freeList, APTR memoryBlock,
  9346.     unsigned long byteSize );
  9347. APTR AllocMem( unsigned long byteSize, unsigned long requirements );
  9348. APTR AllocAbs( unsigned long byteSize, APTR location );
  9349. void FreeMem( APTR memoryBlock, unsigned long byteSize );
  9350. ULONG AvailMem( unsigned long requirements );
  9351. struct MemList *AllocEntry( struct MemList *entry );
  9352. void FreeEntry( struct MemList *entry );
  9353.  
  9354. void Insert( struct List *list, struct Node *node, struct Node *pred );
  9355. void AddHead( struct List *list, struct Node *node );
  9356. void AddTail( struct List *list, struct Node *node );
  9357. void Remove( struct Node *node );
  9358. struct Node *RemHead( struct List *list );
  9359. struct Node *RemTail( struct List *list );
  9360. void Enqueue( struct List *list, struct Node *node );
  9361. struct Node *FindName( struct List *list, UBYTE *name );
  9362.  
  9363. APTR AddTask( struct Task *task, APTR initPC, APTR finalPC );
  9364. void RemTask( struct Task *task );
  9365. struct Task *FindTask( UBYTE *name );
  9366. BYTE SetTaskPri( struct Task *task, long priority );
  9367. ULONG SetSignal( unsigned long newSignals, unsigned long signalSet );
  9368. ULONG SetExcept( unsigned long newSignals, unsigned long signalSet );
  9369. ULONG Wait( unsigned long signalSet );
  9370. void Signal( struct Task *task, unsigned long signalSet );
  9371. BYTE AllocSignal( long signalNum );
  9372. void FreeSignal( long signalNum );
  9373. LONG AllocTrap( long trapNum );
  9374. void FreeTrap( long trapNum );
  9375.  
  9376. void AddPort( struct MsgPort *port );
  9377. void RemPort( struct MsgPort *port );
  9378. void PutMsg( struct MsgPort *port, struct Message *message );
  9379. struct Message *GetMsg( struct MsgPort *port );
  9380. void ReplyMsg( struct Message *message );
  9381. struct Message *WaitPort( struct MsgPort *port );
  9382. struct MsgPort *FindPort( UBYTE *name );
  9383.  
  9384. void AddLibrary( struct Library *library );
  9385. void RemLibrary( struct Library *library );
  9386. struct Library *OldOpenLibrary( UBYTE *libName );
  9387. void CloseLibrary( struct Library *library );
  9388. APTR SetFunction( struct Library *library, long funcOffset,
  9389.     unsigned long (*newFunction)() );
  9390. void SumLibrary( struct Library *library );
  9391.  
  9392. void AddDevice( struct Device *device );
  9393. void RemDevice( struct Device *device );
  9394. BYTE OpenDevice( UBYTE *devName, unsigned long unit,
  9395.     struct IORequest *ioRequest, unsigned long flags );
  9396. void CloseDevice( struct IORequest *ioRequest );
  9397. BYTE DoIO( struct IORequest *ioRequest );
  9398. void SendIO( struct IORequest *ioRequest );
  9399. BOOL CheckIO( struct IORequest *ioRequest );
  9400. BYTE WaitIO( struct IORequest *ioRequest );
  9401. void AbortIO( struct IORequest *ioRequest );
  9402.  
  9403. void AddResource( APTR resource );
  9404. void RemResource( APTR resource );
  9405. APTR OpenResource( UBYTE *resName );
  9406.  
  9407.  
  9408. void RawDoFmt( UBYTE *formatString, APTR dataStream, void (*putChProc)(),
  9409.     APTR putChData );
  9410. ULONG GetCC( void );
  9411. ULONG TypeOfMem( APTR address );
  9412. ULONG Procure( struct Semaphore *semaport, struct Message *bidMsg );
  9413. void Vacate( struct Semaphore *semaport );
  9414. struct Library *OpenLibrary( UBYTE *libName, unsigned long version );
  9415.  
  9416.  
  9417. void InitSemaphore( struct SignalSemaphore *sigSem );
  9418. void ObtainSemaphore( struct SignalSemaphore *sigSem );
  9419. void ReleaseSemaphore( struct SignalSemaphore *sigSem );
  9420. ULONG AttemptSemaphore( struct SignalSemaphore *sigSem );
  9421. void ObtainSemaphoreList( struct List *sigSem );
  9422. void ReleaseSemaphoreList( struct List *sigSem );
  9423. struct SignalSemaphore *FindSemaphore( UBYTE *sigSem );
  9424. void AddSemaphore( struct SignalSemaphore *sigSem );
  9425. void RemSemaphore( struct SignalSemaphore *sigSem );
  9426.  
  9427. ULONG SumKickData( void );
  9428.  
  9429. ULONG AddMemList( unsigned long size, unsigned long attributes,
  9430.     unsigned long pri, APTR base, UBYTE *name );
  9431. void CopyMem( APTR source, APTR dest, unsigned long size );
  9432. void CopyMemQuick( APTR source, APTR dest, unsigned long size );
  9433.  
  9434.  
  9435. void CacheClearU( void );
  9436. void CacheClearE( APTR address, unsigned long length, unsigned long caches );
  9437. ULONG CacheControl( unsigned long cacheBits, unsigned long cacheMask );
  9438.  
  9439. APTR CreateIORequest( struct MsgPort *port, unsigned long size );
  9440. void DeleteIORequest( APTR iorequest );
  9441. struct MsgPort *CreateMsgPort( void );
  9442. void DeleteMsgPort( struct MsgPort *port );
  9443. void ObtainSemaphoreShared( struct SignalSemaphore *sigSem );
  9444.  
  9445. APTR AllocVec( unsigned long byteSize, unsigned long requirements );
  9446. void FreeVec( APTR memoryBlock );
  9447. APTR CreatePrivatePool( unsigned long requirements, unsigned long puddleSize,
  9448.     unsigned long puddleThresh );
  9449. void DeletePrivatePool( APTR poolHeader );
  9450. APTR AllocPooled( unsigned long memSize, APTR poolHeader );
  9451. void FreePooled( APTR memory, APTR poolHeader );
  9452.  
  9453. void ColdReboot( void );
  9454. void StackSwap( APTR newSize, APTR newSP, APTR newStack );
  9455.  
  9456. void ChildFree( APTR tid );
  9457. void ChildOrphan( APTR tid );
  9458. void ChildStatus( APTR tid );
  9459. void ChildWait( APTR tid );
  9460.  
  9461.  
  9462.  
  9463. # 7 "dinclude:clib/exec_protos.h" 3
  9464.  
  9465. # 7 "dinclude:clib/exec_protos.h" 3
  9466.  
  9467.  
  9468.  
  9469.  
  9470.  
  9471.  
  9472.  
  9473.  
  9474. # 42 "local/defs.h" 2
  9475.  
  9476. # 42 "local/defs.h" 2
  9477.  
  9478. # 1 "dinclude:clib/dos_protos.h" 3
  9479.  
  9480.  
  9481.  
  9482.  
  9483. # 1 "dinclude:amiga20/pragmas/config.h" 4
  9484.  
  9485.  
  9486.  
  9487.  
  9488.  
  9489.  
  9490.  
  9491.  
  9492. # 5 "dinclude:clib/dos_protos.h" 3
  9493.  
  9494. # 5 "dinclude:clib/dos_protos.h" 3
  9495.  
  9496. # 1 "dinclude:amiga20/exec/types.h" 4
  9497.  
  9498.  
  9499.  
  9500.  
  9501.  
  9502.  
  9503.  
  9504.  
  9505.  
  9506.  
  9507.  
  9508.  
  9509.  
  9510.  
  9511.  
  9512.  
  9513.  
  9514.  
  9515.  
  9516.  
  9517.  
  9518.  
  9519.  
  9520.  
  9521.  
  9522.  
  9523.  
  9524.  
  9525.  
  9526.  
  9527.  
  9528.  
  9529.  
  9530.  
  9531.  
  9532.  
  9533.  
  9534.  
  9535.  
  9536.  
  9537.  
  9538.  
  9539.  
  9540.  
  9541.  
  9542.  
  9543.  
  9544.  
  9545.  
  9546.  
  9547.  
  9548.  
  9549.  
  9550.  
  9551.  
  9552.  
  9553.  
  9554.  
  9555.  
  9556.  
  9557.  
  9558.  
  9559.  
  9560.  
  9561.  
  9562.  
  9563.  
  9564.  
  9565.  
  9566.  
  9567.  
  9568.  
  9569.  
  9570.  
  9571.  
  9572.  
  9573.  
  9574.  
  9575.  
  9576.  
  9577.  
  9578.  
  9579.  
  9580.  
  9581.  
  9582.  
  9583.  
  9584.  
  9585.  
  9586. # 6 "dinclude:clib/dos_protos.h" 3
  9587.  
  9588. # 6 "dinclude:clib/dos_protos.h" 3
  9589.  
  9590. # 1 "dinclude:amiga20/clib/dos_protos.h" 4
  9591.  
  9592.  
  9593.  
  9594.  
  9595.  
  9596.  
  9597.  
  9598.  
  9599.  
  9600.  
  9601.  
  9602.  
  9603.  
  9604.  
  9605.  
  9606.  
  9607.  
  9608.  
  9609.  
  9610.  
  9611.  
  9612.  
  9613. # 1 "dinclude:amiga20/dos/record.h" 5
  9614.  
  9615.  
  9616.  
  9617.  
  9618.  
  9619.  
  9620.  
  9621.  
  9622.  
  9623.  
  9624.  
  9625.  
  9626.  
  9627.  
  9628.  
  9629.  
  9630.  
  9631.  
  9632.  
  9633.  
  9634.  
  9635.  
  9636.  
  9637.  
  9638.  
  9639.  
  9640.  
  9641.  
  9642. struct RecordLock {
  9643.     BPTR    rec_FH;         
  9644.     ULONG    rec_Offset;     
  9645.     ULONG    rec_Length;     
  9646.     ULONG    rec_Mode;     
  9647. };
  9648.  
  9649.  
  9650.  
  9651. # 23 "dinclude:amiga20/clib/dos_protos.h" 4
  9652.  
  9653. # 23 "dinclude:amiga20/clib/dos_protos.h" 4
  9654.  
  9655.  
  9656.  
  9657. # 1 "dinclude:amiga20/dos/rdargs.h" 5
  9658.  
  9659.  
  9660.  
  9661.  
  9662.  
  9663.  
  9664.  
  9665.  
  9666.  
  9667.  
  9668.  
  9669.  
  9670.  
  9671.  
  9672.  
  9673.  
  9674.  
  9675.  
  9676.  
  9677.  
  9678.  
  9679.  
  9680.  
  9681.  
  9682.  
  9683.  
  9684.  
  9685.  
  9686.  
  9687.  
  9688.  
  9689.  
  9690.  
  9691.  
  9692.  
  9693.  
  9694.  
  9695.  
  9696.  
  9697.  
  9698.  
  9699.  
  9700.  
  9701.  
  9702.  
  9703.  
  9704.  
  9705.  
  9706.  
  9707.  
  9708.  
  9709.  
  9710.  
  9711.  
  9712.  
  9713.  
  9714.  
  9715.  
  9716.  
  9717.  
  9718.  
  9719.  
  9720. struct CSource {
  9721.     UBYTE    *CS_Buffer;
  9722.     LONG    CS_Length;
  9723.     LONG    CS_CurChr;
  9724. };
  9725.  
  9726.  
  9727.  
  9728.  
  9729.  
  9730.  
  9731.  
  9732.  
  9733.  
  9734.  
  9735.  
  9736.  
  9737.  
  9738.  
  9739.  
  9740.  
  9741.  
  9742.  
  9743.  
  9744.  
  9745.  
  9746.  
  9747.  
  9748.  
  9749.  
  9750.  
  9751.  
  9752.  
  9753.  
  9754. struct RDArgs {
  9755.     struct    CSource RDA_Source;     
  9756.     LONG    RDA_DAList;         
  9757.     UBYTE    *RDA_Buffer;         
  9758.     LONG    RDA_BufSiz;         
  9759.     UBYTE    *RDA_ExtHelp;         
  9760.     LONG    RDA_Flags;         
  9761. };
  9762.  
  9763.  
  9764.  
  9765.  
  9766.  
  9767.  
  9768.  
  9769.  
  9770.  
  9771.  
  9772.  
  9773.  
  9774.  
  9775.  
  9776.  
  9777.  
  9778.  
  9779.  
  9780.  
  9781.  
  9782.  
  9783.  
  9784.  
  9785. # 26 "dinclude:amiga20/clib/dos_protos.h" 4
  9786.  
  9787. # 26 "dinclude:amiga20/clib/dos_protos.h" 4
  9788.  
  9789.  
  9790.  
  9791. # 1 "dinclude:amiga20/dos/dosasl.h" 5
  9792.  
  9793.  
  9794.  
  9795.  
  9796.  
  9797.  
  9798.  
  9799.  
  9800.  
  9801.  
  9802.  
  9803.  
  9804.  
  9805.  
  9806.  
  9807.  
  9808.  
  9809.  
  9810.  
  9811.  
  9812.  
  9813.  
  9814.  
  9815.  
  9816.  
  9817.  
  9818.  
  9819.  
  9820.  
  9821.  
  9822.  
  9823.  
  9824.  
  9825.  
  9826.  
  9827.  
  9828.  
  9829.  
  9830.  
  9831.  
  9832.  
  9833.  
  9834.  
  9835.  
  9836.  
  9837.  
  9838.  
  9839.  
  9840.  
  9841.  
  9842.  
  9843.  
  9844.  
  9845. struct AnchorPath {
  9846.     struct AChain    *ap_Base;     
  9847.  
  9848.     struct AChain    *ap_Last;     
  9849.  
  9850.     LONG    ap_BreakBits;     
  9851.     LONG    ap_FoundBreak;     
  9852.     BYTE    ap_Flags;     
  9853.     BYTE    ap_Reserved;
  9854.     WORD    ap_Strlen;     
  9855.  
  9856.     struct    FileInfoBlock ap_Info;
  9857.     UBYTE    ap_Buf[1];     
  9858.      
  9859. };
  9860.  
  9861.  
  9862.  
  9863.  
  9864.  
  9865.  
  9866.  
  9867.                  
  9868.                  
  9869.                  
  9870.  
  9871.  
  9872.  
  9873.                  
  9874.                  
  9875.  
  9876.  
  9877.  
  9878.  
  9879.  
  9880.  
  9881.  
  9882.  
  9883.  
  9884.  
  9885.  
  9886.  
  9887.  
  9888.  
  9889. struct AChain {
  9890.     struct AChain *an_Child;
  9891.     struct AChain *an_Parent;
  9892.     BPTR    an_Lock;
  9893.     struct FileInfoBlock an_Info;
  9894.     BYTE    an_Flags;
  9895.     UBYTE    an_String[1];     
  9896. };
  9897.  
  9898.  
  9899.  
  9900.  
  9901.  
  9902.  
  9903.  
  9904.  
  9905.  
  9906.  
  9907.  
  9908.  
  9909.  
  9910.  
  9911.  
  9912.  
  9913.  
  9914.  
  9915.  
  9916.  
  9917.  
  9918.  
  9919.  
  9920.  
  9921.  
  9922.  
  9923.  
  9924.  
  9925.  
  9926.  
  9927.  
  9928.  
  9929.  
  9930.  
  9931.  
  9932.  
  9933.  
  9934.  
  9935.  
  9936.  
  9937.  
  9938.  
  9939.  
  9940.  
  9941.  
  9942.  
  9943.  
  9944.  
  9945. # 29 "dinclude:amiga20/clib/dos_protos.h" 4
  9946.  
  9947. # 29 "dinclude:amiga20/clib/dos_protos.h" 4
  9948.  
  9949.  
  9950.  
  9951. # 1 "dinclude:amiga20/dos/var.h" 5
  9952.  
  9953.  
  9954.  
  9955.  
  9956.  
  9957.  
  9958.  
  9959.  
  9960.  
  9961.  
  9962.  
  9963.  
  9964.  
  9965.  
  9966.  
  9967.  
  9968.  
  9969.  
  9970.  
  9971.  
  9972.  
  9973.  
  9974.  
  9975.  
  9976.  
  9977.  
  9978. struct LocalVar {
  9979.     struct Node lv_Node;
  9980.     UWORD    lv_Flags;
  9981.     UBYTE    *lv_Value;
  9982.     ULONG    lv_Len;
  9983. };
  9984.  
  9985.  
  9986.  
  9987.  
  9988.  
  9989.  
  9990.  
  9991.  
  9992.  
  9993.  
  9994.  
  9995.  
  9996.  
  9997.  
  9998.  
  9999.  
  10000.  
  10001.  
  10002.  
  10003.  
  10004.  
  10005.  
  10006.  
  10007.  
  10008.  
  10009. # 32 "dinclude:amiga20/clib/dos_protos.h" 4
  10010.  
  10011. # 32 "dinclude:amiga20/clib/dos_protos.h" 4
  10012.  
  10013.  
  10014.  
  10015. # 1 "dinclude:amiga20/dos/notify.h" 5
  10016.  
  10017.  
  10018.  
  10019.  
  10020.  
  10021.  
  10022.  
  10023.  
  10024.  
  10025.  
  10026.  
  10027.  
  10028.  
  10029.  
  10030.  
  10031.  
  10032.  
  10033.  
  10034.  
  10035.  
  10036.  
  10037.  
  10038.  
  10039.  
  10040.  
  10041.  
  10042.  
  10043.  
  10044.  
  10045.  
  10046.  
  10047.  
  10048.  
  10049.  
  10050.  
  10051.  
  10052.  
  10053.  
  10054.  
  10055.  
  10056. struct NotifyMessage {
  10057.     struct Message nm_ExecMessage;
  10058.     ULONG  nm_Class;
  10059.     UWORD  nm_Code;
  10060.     struct NotifyRequest *nm_NReq;     
  10061.     ULONG  nm_DoNotTouch;         
  10062.     ULONG  nm_DoNotTouch2;         
  10063. };
  10064.  
  10065.  
  10066.  
  10067.  
  10068. struct NotifyRequest {
  10069.     UBYTE *nr_Name;
  10070.     UBYTE *nr_FullName;         
  10071.     ULONG nr_UserData;         
  10072.     ULONG nr_Flags;
  10073.  
  10074.     union {
  10075.  
  10076.         struct {
  10077.         struct MsgPort *nr_Port;     
  10078.         } nr_Msg;
  10079.  
  10080.         struct {
  10081.         struct Task *nr_Task;         
  10082.         UBYTE nr_SignalNum;         
  10083.         UBYTE nr_pad[3];
  10084.         } nr_Signal;
  10085.     } nr_stuff;
  10086.  
  10087.     ULONG nr_Reserved[4];         
  10088.  
  10089.      
  10090.     ULONG nr_MsgCount;         
  10091.     struct MsgPort *nr_Handler;     
  10092. };
  10093.  
  10094.  
  10095.  
  10096.  
  10097.  
  10098.  
  10099.  
  10100.  
  10101.  
  10102.  
  10103.  
  10104.  
  10105.  
  10106.  
  10107.  
  10108.  
  10109.  
  10110.  
  10111.  
  10112.  
  10113.  
  10114.  
  10115.  
  10116. # 35 "dinclude:amiga20/clib/dos_protos.h" 4
  10117.  
  10118. # 35 "dinclude:amiga20/clib/dos_protos.h" 4
  10119.  
  10120.  
  10121.  
  10122. # 1 "dinclude:amiga20/dos/datetime.h" 5
  10123.  
  10124.  
  10125.  
  10126.  
  10127.  
  10128.  
  10129.  
  10130.  
  10131.  
  10132.  
  10133.  
  10134.  
  10135.  
  10136.  
  10137.  
  10138.  
  10139.  
  10140.  
  10141.  
  10142.  
  10143.  
  10144.  
  10145.  
  10146.  
  10147.  
  10148.  
  10149. struct DateTime {
  10150.     struct DateStamp dat_Stamp;     
  10151.     UBYTE    dat_Format;         
  10152.     UBYTE    dat_Flags;         
  10153.     UBYTE    *dat_StrDay;         
  10154.     UBYTE    *dat_StrDate;         
  10155.     UBYTE    *dat_StrTime;         
  10156. };
  10157.  
  10158.  
  10159.  
  10160.  
  10161.  
  10162.  
  10163.  
  10164.  
  10165.  
  10166.  
  10167.  
  10168.  
  10169.  
  10170.  
  10171.  
  10172.  
  10173.  
  10174.  
  10175.  
  10176.  
  10177.  
  10178.  
  10179.  
  10180. # 38 "dinclude:amiga20/clib/dos_protos.h" 4
  10181.  
  10182. # 38 "dinclude:amiga20/clib/dos_protos.h" 4
  10183.  
  10184. BPTR Open( UBYTE *name, long accessMode );
  10185. LONG Close( BPTR file );
  10186. LONG Read( BPTR file, APTR buffer, long length );
  10187. LONG Write( BPTR file, APTR buffer, long length );
  10188. BPTR Input( void );
  10189. BPTR Output( void );
  10190. LONG Seek( BPTR file, long position, long offset );
  10191. LONG DeleteFile( UBYTE *name );
  10192. LONG Rename( UBYTE *oldName, UBYTE *newName );
  10193. BPTR Lock( UBYTE *name, long type );
  10194. void UnLock( BPTR lock );
  10195. BPTR DupLock( BPTR lock );
  10196. LONG Examine( BPTR lock, struct FileInfoBlock *fileInfoBlock );
  10197. LONG ExNext( BPTR lock, struct FileInfoBlock *fileInfoBlock );
  10198. LONG Info( BPTR lock, struct InfoData *parameterBlock );
  10199. BPTR CreateDir( UBYTE *name );
  10200. BPTR CurrentDir( BPTR lock );
  10201. LONG IoErr( void );
  10202. struct MsgPort *CreateProc( UBYTE *name, long pri, BPTR segList,
  10203.     long stackSize );
  10204. void Exit( long returnCode );
  10205. BPTR LoadSeg( UBYTE *name );
  10206. void UnLoadSeg( BPTR seglist );
  10207. struct MsgPort *DeviceProc( UBYTE *name );
  10208. LONG SetComment( UBYTE *name, UBYTE *comment );
  10209. LONG SetProtection( UBYTE *name, long protect );
  10210. struct DateStamp *DateStamp( struct DateStamp *date );
  10211. void Delay( long timeout );
  10212. LONG WaitForChar( BPTR file, long timeout );
  10213. BPTR ParentDir( BPTR lock );
  10214. LONG IsInteractive( BPTR file );
  10215. LONG Execute( UBYTE *string, BPTR file, BPTR file2 );
  10216.  
  10217.  
  10218. APTR AllocDosObject( unsigned long type, struct TagItem *tags );
  10219. APTR AllocDosObjectTagList( unsigned long type, struct TagItem *tags );
  10220. APTR AllocDosObjectTags( unsigned long type, unsigned long tag1type, ... );
  10221. void FreeDosObject( unsigned long type, APTR ptr );
  10222.  
  10223. LONG DoPkt( struct MsgPort *port, long action, long arg1, long arg2, long arg3,
  10224.     long arg4, long arg5 );
  10225. LONG DoPkt0( struct MsgPort *port, long action );
  10226. LONG DoPkt1( struct MsgPort *port, long action, long arg1 );
  10227. LONG DoPkt2( struct MsgPort *port, long action, long arg1, long arg2 );
  10228. LONG DoPkt3( struct MsgPort *port, long action, long arg1, long arg2,
  10229.     long arg3 );
  10230. LONG DoPkt4( struct MsgPort *port, long action, long arg1, long arg2,
  10231.     long arg3, long arg4 );
  10232. void SendPkt( struct DosPacket *dp, struct MsgPort *port,
  10233.     struct MsgPort *replyport );
  10234. struct DosPacket *WaitPkt( void );
  10235. void ReplyPkt( struct DosPacket *dp, long res1, long res2 );
  10236. void AbortPkt( struct MsgPort *port, struct DosPacket *pkt );
  10237.  
  10238. BOOL LockRecord( BPTR fh, unsigned long offset, unsigned long length,
  10239.     unsigned long mode, unsigned long timeout );
  10240. BOOL LockRecords( struct RecordLock *recArray, unsigned long timeout );
  10241. BOOL UnLockRecord( BPTR fh, unsigned long offset, unsigned long length );
  10242. BOOL UnLockRecords( struct RecordLock *recArray );
  10243.  
  10244. BPTR SelectInput( BPTR fh );
  10245. BPTR SelectOutput( BPTR fh );
  10246. LONG FGetC( BPTR fh );
  10247. void FPutC( BPTR fh, unsigned long ch );
  10248. LONG UnGetC( BPTR fh, long character );
  10249. LONG FRead( BPTR fh, APTR block, unsigned long blocklen,
  10250.     unsigned long number );
  10251. LONG FWrite( BPTR fh, APTR block, unsigned long blocklen,
  10252.     unsigned long number );
  10253. UBYTE *FGets( BPTR fh, UBYTE *buf, unsigned long buflen );
  10254. LONG FPuts( BPTR fh, UBYTE *str );
  10255. void VFWritef( BPTR fh, UBYTE *format, LONG *argarray );
  10256. void FWritef( BPTR fh, UBYTE *format, long arg1, ... );
  10257. LONG VFPrintf( BPTR fh, UBYTE *format, LONG *argarray );
  10258. LONG FPrintf( BPTR fh, UBYTE *format, long arg1, ... );
  10259. void Flush( BPTR fh );
  10260. LONG SetVBuf( BPTR fh, UBYTE *buff, long type, long size );
  10261.  
  10262. BPTR DupLockFromFH( BPTR fh );
  10263. BPTR OpenFromLock( BPTR lock );
  10264. BPTR ParentOfFH( BPTR fh );
  10265. BOOL ExamineFH( BPTR fh, struct FileInfoBlock *fib );
  10266. LONG SetFileDate( UBYTE *name, struct DateStamp *date );
  10267. LONG NameFromLock( BPTR lock, UBYTE *buffer, long len );
  10268. LONG NameFromFH( BPTR fh, UBYTE *buffer, long len );
  10269. WORD SplitName( UBYTE *name, unsigned long seperator, UBYTE *buf, long oldpos,
  10270.     long size );
  10271. LONG SameLock( BPTR lock1, BPTR lock2 );
  10272. LONG SetMode( BPTR fh, long mode );
  10273. LONG ExAll( BPTR lock, struct ExAllData *buffer, long size, long data,
  10274.     struct ExAllControl *control );
  10275. LONG ReadLink( struct MsgPort *port, BPTR lock, UBYTE *path, UBYTE *buffer,
  10276.     unsigned long size );
  10277. LONG MakeLink( UBYTE *name, long dest, long soft );
  10278. LONG ChangeMode( long type, BPTR fh, long newmode );
  10279. LONG SetFileSize( BPTR fh, long pos, long mode );
  10280.  
  10281. LONG SetIoErr( long result );
  10282. BOOL Fault( long code, UBYTE *header, UBYTE *buffer, long len );
  10283. BOOL PrintFault( long code, UBYTE *header );
  10284. LONG ErrorReport( long code, long type, unsigned long arg1,
  10285.     struct MsgPort *device );
  10286.  
  10287. struct CommandLineInterface *Cli( void );
  10288. struct Process *CreateNewProc( struct TagItem *tags );
  10289. struct Process *CreateNewProcTagList( struct TagItem *tags );
  10290. struct Process *CreateNewProcTags( unsigned long tag1type, ... );
  10291. LONG RunCommand( BPTR seg, long stack, UBYTE *paramptr, long paramlen );
  10292. struct MsgPort *GetConsoleTask( void );
  10293. struct MsgPort *SetConsoleTask( struct MsgPort *task );
  10294. struct MsgPort *GetFileSysTask( void );
  10295. struct MsgPort *SetFileSysTask( struct MsgPort *task );
  10296. UBYTE *GetArgStr( void );
  10297. BOOL SetArgStr( UBYTE *string );
  10298. struct Process *FindCliProc( unsigned long num );
  10299. ULONG MaxCli( void );
  10300. BOOL SetCurrentDirName( UBYTE *name );
  10301. BOOL GetCurrentDirName( UBYTE *buf, long len );
  10302. BOOL SetProgramName( UBYTE *name );
  10303. BOOL GetProgramName( UBYTE *buf, long len );
  10304. BOOL SetPrompt( UBYTE *name );
  10305. BOOL GetPrompt( UBYTE *buf, long len );
  10306. BPTR SetProgramDir( BPTR lock );
  10307. BPTR GetProgramDir( void );
  10308.  
  10309. LONG SystemTagList( UBYTE *command, struct TagItem *tags );
  10310. LONG System( UBYTE *command, struct TagItem *tags );
  10311. LONG SystemTags( UBYTE *command, unsigned long tag1type, ... );
  10312. LONG AssignLock( UBYTE *name, BPTR lock );
  10313. BOOL AssignLate( UBYTE *name, UBYTE *path );
  10314. BOOL AssignPath( UBYTE *name, UBYTE *path );
  10315. BOOL AssignAdd( UBYTE *name, BPTR lock );
  10316. LONG RemAssignList( UBYTE *name, BPTR lock );
  10317. struct DevProc *GetDeviceProc( UBYTE *name, struct DevProc *dp );
  10318. void FreeDeviceProc( struct DevProc *dp );
  10319. struct DosList *LockDosList( unsigned long flags );
  10320. void UnLockDosList( unsigned long flags );
  10321. struct DosList *AttemptLockDosList( unsigned long flags );
  10322. BOOL RemDosEntry( struct DosList *dlist );
  10323. struct DosList *AddDosEntry( struct DosList *dlist );
  10324. struct DosList *FindDosEntry( struct DosList *dlist, UBYTE *name,
  10325.     unsigned long flags );
  10326. struct DosList *NextDosEntry( struct DosList *dlist, unsigned long flags );
  10327. struct DosList *MakeDosEntry( UBYTE *name, long type );
  10328. void FreeDosEntry( struct DosList *dlist );
  10329. BOOL IsFileSystem( UBYTE *name );
  10330.  
  10331. BOOL Format( UBYTE *filesystem, UBYTE *volumename, unsigned long dostype );
  10332. LONG Relabel( UBYTE *drive, UBYTE *newname );
  10333. LONG Inhibit( UBYTE *name, long onoff );
  10334. LONG AddBuffers( UBYTE *name, long number );
  10335.  
  10336. LONG CompareDates( struct DateStamp *date1, struct DateStamp *date2 );
  10337. LONG DateToStr( struct DateTime *datetime );
  10338. LONG StrToDate( struct DateTime *datetime );
  10339.  
  10340. BPTR InternalLoadSeg( BPTR fh, BPTR table, LONG *funcarray, LONG *stack );
  10341. void InternalUnLoadSeg( BPTR seglist, void (*freefunc)() );
  10342. BPTR NewLoadSeg( UBYTE *file, struct TagItem *tags );
  10343. BPTR NewLoadSegTagList( UBYTE *file, struct TagItem *tags );
  10344. BPTR NewLoadSegTags( UBYTE *file, unsigned long tag1type, ... );
  10345. LONG AddSegment( UBYTE *name, BPTR seg, long system );
  10346. struct Segment *FindSegment( UBYTE *name, struct Segment *seg, long system );
  10347. LONG RemSegment( struct Segment *seg );
  10348.  
  10349. LONG CheckSignal( long mask );
  10350. struct RDArgs *ReadArgs( UBYTE *template, LONG *array, struct RDArgs *args );
  10351. LONG FindArg( UBYTE *keyword, UBYTE *template );
  10352. LONG ReadItem( UBYTE *name, long maxchars, struct CSource *cSource );
  10353. LONG StrToLong( UBYTE *string, LONG *value );
  10354. LONG MatchFirst( UBYTE *pat, struct AnchorPath *anchor );
  10355. LONG MatchNext( struct AnchorPath *anchor );
  10356. void MatchEnd( struct AnchorPath *anchor );
  10357. BOOL ParsePattern( UBYTE *pat, UBYTE *buf, long buflen );
  10358. BOOL MatchPattern( UBYTE *pat, UBYTE *str );
  10359.  
  10360. void FreeArgs( struct RDArgs *args );
  10361. UBYTE *FilePart( UBYTE *path );
  10362. UBYTE *PathPart( UBYTE *path );
  10363. BOOL AddPart( UBYTE *dirname, UBYTE *filename, unsigned long size );
  10364.  
  10365. BOOL StartNotify( struct NotifyRequest *notify );
  10366. void EndNotify( struct NotifyRequest *notify );
  10367.  
  10368. BOOL SetVar( UBYTE *name, UBYTE *buffer, long size, long flags );
  10369. LONG GetVar( UBYTE *name, UBYTE *buffer, long size, long flags );
  10370. LONG DeleteVar( UBYTE *name, unsigned long flags );
  10371. struct LocalVar *FindVar( UBYTE *name, unsigned long type );
  10372. LONG CliInit( struct DosPacket *dp );
  10373. LONG CliInitNewcli( struct DosPacket *dp );
  10374. LONG CliInitRun( struct DosPacket *dp );
  10375. LONG WriteChars( UBYTE *buf, unsigned long buflen );
  10376. LONG PutStr( UBYTE *str );
  10377. LONG VPrintf( UBYTE *format, LONG *argarray );
  10378. LONG Printf( UBYTE *format, long arg1, ... );
  10379.  
  10380. BOOL ParsePatternNoCase( UBYTE *pat, UBYTE *buf, long buflen );
  10381. BOOL MatchPatternNoCase( UBYTE *pat, UBYTE *str );
  10382.  
  10383. BOOL SameDevice( BPTR lock1, BPTR lock2 );
  10384.  
  10385.  
  10386.  
  10387.  
  10388.  
  10389. # 7 "dinclude:clib/dos_protos.h" 3
  10390.  
  10391. # 7 "dinclude:clib/dos_protos.h" 3
  10392.  
  10393.  
  10394.  
  10395.  
  10396.  
  10397.  
  10398.  
  10399.  
  10400. # 43 "local/defs.h" 2
  10401.  
  10402. # 43 "local/defs.h" 2
  10403.  
  10404. # 1 "dinclude:clib/intuition_protos.h" 3
  10405.  
  10406.  
  10407.  
  10408.  
  10409. # 1 "dinclude:amiga20/pragmas/config.h" 4
  10410.  
  10411.  
  10412.  
  10413.  
  10414.  
  10415.  
  10416.  
  10417.  
  10418. # 5 "dinclude:clib/intuition_protos.h" 3
  10419.  
  10420. # 5 "dinclude:clib/intuition_protos.h" 3
  10421.  
  10422. # 1 "dinclude:amiga20/exec/types.h" 4
  10423.  
  10424.  
  10425.  
  10426.  
  10427.  
  10428.  
  10429.  
  10430.  
  10431.  
  10432.  
  10433.  
  10434.  
  10435.  
  10436.  
  10437.  
  10438.  
  10439.  
  10440.  
  10441.  
  10442.  
  10443.  
  10444.  
  10445.  
  10446.  
  10447.  
  10448.  
  10449.  
  10450.  
  10451.  
  10452.  
  10453.  
  10454.  
  10455.  
  10456.  
  10457.  
  10458.  
  10459.  
  10460.  
  10461.  
  10462.  
  10463.  
  10464.  
  10465.  
  10466.  
  10467.  
  10468.  
  10469.  
  10470.  
  10471.  
  10472.  
  10473.  
  10474.  
  10475.  
  10476.  
  10477.  
  10478.  
  10479.  
  10480.  
  10481.  
  10482.  
  10483.  
  10484.  
  10485.  
  10486.  
  10487.  
  10488.  
  10489.  
  10490.  
  10491.  
  10492.  
  10493.  
  10494.  
  10495.  
  10496.  
  10497.  
  10498.  
  10499.  
  10500.  
  10501.  
  10502.  
  10503.  
  10504.  
  10505.  
  10506.  
  10507.  
  10508.  
  10509.  
  10510.  
  10511.  
  10512. # 6 "dinclude:clib/intuition_protos.h" 3
  10513.  
  10514. # 6 "dinclude:clib/intuition_protos.h" 3
  10515.  
  10516. # 1 "dinclude:amiga20/clib/intuition_protos.h" 4
  10517.  
  10518.  
  10519.  
  10520.  
  10521.  
  10522.  
  10523.  
  10524.  
  10525.  
  10526.  
  10527.  
  10528.  
  10529.  
  10530.  
  10531.  
  10532.  
  10533.  
  10534.  
  10535.  
  10536. void OpenIntuition( void );
  10537. void Intuition( struct InputEvent *iEvent );
  10538. UWORD AddGadget( struct Window *window, struct Gadget *gadget,
  10539.     unsigned long position );
  10540. BOOL ClearDMRequest( struct Window *window );
  10541. void ClearMenuStrip( struct Window *window );
  10542. void ClearPointer( struct Window *window );
  10543. BOOL CloseScreen( struct Screen *screen );
  10544. void CloseWindow( struct Window *window );
  10545. LONG CloseWorkBench( void );
  10546. void CurrentTime( ULONG *seconds, ULONG *micros );
  10547. BOOL DisplayAlert( unsigned long alertNumber, UBYTE *string,
  10548.     unsigned long height );
  10549. void DisplayBeep( struct Screen *screen );
  10550. BOOL DoubleClick( unsigned long sSeconds, unsigned long sMicros,
  10551.     unsigned long cSeconds, unsigned long cMicros );
  10552. void DrawBorder( struct RastPort *rp, struct Border *border, long leftOffset,
  10553.     long topOffset );
  10554. void DrawImage( struct RastPort *rp, struct Image *image, long leftOffset,
  10555.     long topOffset );
  10556. void EndRequest( struct Requester *requester, struct Window *window );
  10557. struct Preferences *GetDefPrefs( struct Preferences *preferences, long size );
  10558. struct Preferences *GetPrefs( struct Preferences *preferences, long size );
  10559. void InitRequester( struct Requester *requester );
  10560. struct MenuItem *ItemAddress( struct Menu *menuStrip,
  10561.     unsigned long menuNumber );
  10562. BOOL ModifyIDCMP( struct Window *window, unsigned long flags );
  10563. void ModifyProp( struct Gadget *gadget, struct Window *window,
  10564.     struct Requester *requester, unsigned long flags,
  10565.     unsigned long horizPot, unsigned long vertPot,
  10566.     unsigned long horizBody, unsigned long vertBody );
  10567. void MoveScreen( struct Screen *screen, long dx, long dy );
  10568. void MoveWindow( struct Window *window, long dx, long dy );
  10569. void OffGadget( struct Gadget *gadget, struct Window *window,
  10570.     struct Requester *requester );
  10571. void OffMenu( struct Window *window, unsigned long menuNumber );
  10572. void OnGadget( struct Gadget *gadget, struct Window *window,
  10573.     struct Requester *requester );
  10574. void OnMenu( struct Window *window, unsigned long menuNumber );
  10575. struct Screen *OpenScreen( struct NewScreen *newScreen );
  10576. struct Window *OpenWindow( struct NewWindow *newWindow );
  10577. BOOL OpenWorkBench( void );
  10578. void PrintIText( struct RastPort *rp, struct IntuiText *iText, long left,
  10579.     long top );
  10580. void RefreshGadgets( struct Gadget *gadgets, struct Window *window,
  10581.     struct Requester *requester );
  10582. UWORD RemoveGadget( struct Window *window, struct Gadget *gadget );
  10583.  
  10584.  
  10585.  
  10586. void ReportMouse( long flag, struct Window *window );
  10587. void ReportMouse1( struct Window *window, long flag );
  10588. BOOL Request( struct Requester *requester, struct Window *window );
  10589. void ScreenToBack( struct Screen *screen );
  10590. void ScreenToFront( struct Screen *screen );
  10591. BOOL SetDMRequest( struct Window *window, struct Requester *requester );
  10592. BOOL SetMenuStrip( struct Window *window, struct Menu *menu );
  10593. void SetPointer( struct Window *window, UWORD *pointer, long height,
  10594.     long width, long xOffset, long yOffset );
  10595. void SetWindowTitles( struct Window *window, UBYTE *windowTitle,
  10596.     UBYTE *screenTitle );
  10597. void ShowTitle( struct Screen *screen, long showIt );
  10598. void SizeWindow( struct Window *window, long dx, long dy );
  10599. struct View *ViewAddress( void );
  10600. struct ViewPort *ViewPortAddress( struct Window *window );
  10601. void WindowToBack( struct Window *window );
  10602. void WindowToFront( struct Window *window );
  10603. BOOL WindowLimits( struct Window *window, long widthMin, long heightMin,
  10604.     unsigned long widthMax, unsigned long heightMax );
  10605.  
  10606. struct Preferences *SetPrefs( struct Preferences *preferences, long size,
  10607.     long inform );
  10608.  
  10609. LONG IntuiTextLength( struct IntuiText *iText );
  10610. BOOL WBenchToBack( void );
  10611. BOOL WBenchToFront( void );
  10612.  
  10613. BOOL AutoRequest( struct Window *window, struct IntuiText *body,
  10614.     struct IntuiText *posText, struct IntuiText *negText,
  10615.     unsigned long pFlag, unsigned long nFlag, unsigned long width,
  10616.     unsigned long height );
  10617. void BeginRefresh( struct Window *window );
  10618. struct Window *BuildSysRequest( struct Window *window, struct IntuiText *body,
  10619.     struct IntuiText *posText, struct IntuiText *negText,
  10620.     unsigned long flags, unsigned long width, unsigned long height );
  10621. void EndRefresh( struct Window *window, long complete );
  10622. void FreeSysRequest( struct Window *window );
  10623. void MakeScreen( struct Screen *screen );
  10624. void RemakeDisplay( void );
  10625. void RethinkDisplay( void );
  10626.  
  10627. APTR AllocRemember( struct Remember **rememberKey, unsigned long size,
  10628.     unsigned long flags );
  10629.  
  10630. void AlohaWorkbench( long wbport );
  10631. void FreeRemember( struct Remember **rememberKey, long reallyForget );
  10632.  
  10633. ULONG LockIBase( unsigned long dontknow );
  10634. void UnlockIBase( unsigned long ibLock );
  10635.  
  10636. LONG GetScreenData( APTR buffer, unsigned long size, unsigned long type,
  10637.     struct Screen *screen );
  10638. void RefreshGList( struct Gadget *gadgets, struct Window *window,
  10639.     struct Requester *requester, long numGad );
  10640. UWORD AddGList( struct Window *window, struct Gadget *gadget,
  10641.     unsigned long position, long numGad, struct Requester *requester );
  10642. UWORD RemoveGList( struct Window *remPtr, struct Gadget *gadget,
  10643.     long numGad );
  10644. LONG ActivateWindow( struct Window *window );
  10645. void RefreshWindowFrame( struct Window *window );
  10646. BOOL ActivateGadget( struct Gadget *gadgets, struct Window *window,
  10647.     struct Requester *requester );
  10648. void NewModifyProp( struct Gadget *gadget, struct Window *window,
  10649.     struct Requester *requester, unsigned long flags,
  10650.     unsigned long horizPot, unsigned long vertPot,
  10651.     unsigned long horizBody, unsigned long vertBody, long numGad );
  10652.  
  10653. LONG QueryOverscan( unsigned long displayID, struct Rectangle *rect,
  10654.     long oScanType );
  10655. void MoveWindowInFrontOf( struct Window *window,
  10656.     struct Window *behindWindow );
  10657. void ChangeWindowBox( struct Window *window, long left, long top, long width,
  10658.     long height );
  10659. struct Hook *SetEditHook( struct Hook *hook );
  10660. LONG SetMouseQueue( struct Window *window, unsigned long queueLength );
  10661. void ZipWindow( struct Window *window );
  10662.  
  10663. struct Screen *LockPubScreen( UBYTE *name );
  10664. void UnlockPubScreen( UBYTE *name, struct Screen *screen );
  10665. struct List *LockPubScreenList( void );
  10666. void UnlockPubScreenList( void );
  10667. UBYTE *NextPubScreen( struct Screen *screen, UBYTE *namebuf );
  10668. void SetDefaultPubScreen( UBYTE *name );
  10669. UWORD SetPubScreenModes( unsigned long modes );
  10670. UWORD PubScreenStatus( struct Screen *screen, unsigned long statusFlags );
  10671.  
  10672. struct RastPort *ObtainGIRPort( struct GadgetInfo *gInfo );
  10673. void ReleaseGIRPort( struct RastPort *rp );
  10674. void GadgetMouse( struct Gadget *gadget, struct GadgetInfo *gInfo,
  10675.     WORD *mousePoint );
  10676.  
  10677. void GetDefaultPubScreen( UBYTE *nameBuffer );
  10678. LONG EasyRequestArgs( struct Window *window, struct EasyStruct *easyStruct,
  10679.     ULONG *idcmpPtr, APTR args );
  10680. LONG EasyRequest( struct Window *window, struct EasyStruct *easyStruct,
  10681.     ULONG *idcmpPtr, APTR arg1, ... );
  10682. struct Window *BuildEasyRequestArgs( struct Window *window,
  10683.     struct EasyStruct *easyStruct, unsigned long idcmp, APTR args );
  10684. struct Window *BuildEasyRequest( struct Window *window,
  10685.     struct EasyStruct *easyStruct, unsigned long idcmp, APTR arg1, ... );
  10686. LONG SysReqHandler( struct Window *window, ULONG *idcmpPtr, long waitInput );
  10687. struct Window *OpenWindowTagList( struct NewWindow *newWindow,
  10688.     struct TagItem *tagList );
  10689. struct Window *OpenWindowTags( struct NewWindow *newWindow,
  10690.     unsigned long tag1Type, ... );
  10691. struct Screen *OpenScreenTagList( struct NewScreen *newScreen,
  10692.     struct TagItem *tagList );
  10693. struct Screen *OpenScreenTags( struct NewScreen *newScreen,
  10694.     unsigned long tag1Type, ... );
  10695.  
  10696.  
  10697. void DrawImageState( struct RastPort *rp, struct Image *image, long leftOffset,
  10698.     long topOffset, unsigned long state, struct DrawInfo *drawInfo );
  10699. BOOL PointInImage( unsigned long point, struct Image *image );
  10700. void EraseImage( struct RastPort *rp, struct Image *image, long leftOffset,
  10701.     long topOffset );
  10702.  
  10703. APTR NewObjectA( struct IClass *class, UBYTE *classID,
  10704.     struct TagItem *tagList );
  10705. APTR NewObject( struct IClass *class, UBYTE *classID, unsigned long tag1,
  10706.     ... );
  10707.  
  10708. void DisposeObject( APTR object );
  10709. ULONG SetAttrsA( APTR object, struct TagItem *tagList );
  10710. ULONG SetAttrs( APTR object, unsigned long tag1, ... );
  10711.  
  10712. ULONG GetAttr( unsigned long attrID, APTR object, ULONG *storagePtr );
  10713.  
  10714.  
  10715. ULONG SetGadgetAttrsA( struct Gadget *gadget, struct Window *window,
  10716.     struct Requester *requester, struct TagItem *tagList );
  10717. ULONG SetGadgetAttrs( struct Gadget *gadget, struct Window *window,
  10718.     struct Requester *requester, unsigned long tag1, ... );
  10719.  
  10720.  
  10721. APTR NextObject( APTR objectPtrPtr );
  10722. struct IClass *MakeClass( UBYTE *classID, UBYTE *superClassID,
  10723.     struct IClass *superClassPtr, unsigned long instanceSize,
  10724.     unsigned long flags );
  10725. void AddClass( struct IClass *class );
  10726.  
  10727.  
  10728. struct DrawInfo *GetScreenDrawInfo( struct Screen *screen );
  10729. void FreeScreenDrawInfo( struct Screen *screen, struct DrawInfo *drawInfo );
  10730.  
  10731. BOOL ResetMenuStrip( struct Window *window, struct Menu *menu );
  10732. void RemoveClass( struct IClass *classPtr );
  10733. BOOL FreeClass( struct IClass *classPtr );
  10734.  
  10735.  
  10736. # 7 "dinclude:clib/intuition_protos.h" 3
  10737.  
  10738. # 7 "dinclude:clib/intuition_protos.h" 3
  10739.  
  10740.  
  10741.  
  10742.  
  10743.  
  10744.  
  10745.  
  10746.  
  10747. # 44 "local/defs.h" 2
  10748.  
  10749. # 44 "local/defs.h" 2
  10750.  
  10751. # 1 "dinclude:clib/diskfont_protos.h" 3
  10752.  
  10753.  
  10754.  
  10755.  
  10756. # 1 "dinclude:amiga20/pragmas/config.h" 4
  10757.  
  10758.  
  10759.  
  10760.  
  10761.  
  10762.  
  10763.  
  10764.  
  10765. # 5 "dinclude:clib/diskfont_protos.h" 3
  10766.  
  10767. # 5 "dinclude:clib/diskfont_protos.h" 3
  10768.  
  10769. # 1 "dinclude:amiga20/exec/types.h" 4
  10770.  
  10771.  
  10772.  
  10773.  
  10774.  
  10775.  
  10776.  
  10777.  
  10778.  
  10779.  
  10780.  
  10781.  
  10782.  
  10783.  
  10784.  
  10785.  
  10786.  
  10787.  
  10788.  
  10789.  
  10790.  
  10791.  
  10792.  
  10793.  
  10794.  
  10795.  
  10796.  
  10797.  
  10798.  
  10799.  
  10800.  
  10801.  
  10802.  
  10803.  
  10804.  
  10805.  
  10806.  
  10807.  
  10808.  
  10809.  
  10810.  
  10811.  
  10812.  
  10813.  
  10814.  
  10815.  
  10816.  
  10817.  
  10818.  
  10819.  
  10820.  
  10821.  
  10822.  
  10823.  
  10824.  
  10825.  
  10826.  
  10827.  
  10828.  
  10829.  
  10830.  
  10831.  
  10832.  
  10833.  
  10834.  
  10835.  
  10836.  
  10837.  
  10838.  
  10839.  
  10840.  
  10841.  
  10842.  
  10843.  
  10844.  
  10845.  
  10846.  
  10847.  
  10848.  
  10849.  
  10850.  
  10851.  
  10852.  
  10853.  
  10854.  
  10855.  
  10856.  
  10857.  
  10858.  
  10859. # 6 "dinclude:clib/diskfont_protos.h" 3
  10860.  
  10861. # 6 "dinclude:clib/diskfont_protos.h" 3
  10862.  
  10863. # 1 "dinclude:amiga20/clib/diskfont_protos.h" 4
  10864.  
  10865.  
  10866.  
  10867.  
  10868.  
  10869.  
  10870.  
  10871.  
  10872.  
  10873.  
  10874.  
  10875.  
  10876.  
  10877.  
  10878.  
  10879.  
  10880.  
  10881.  
  10882.  
  10883. # 1 "dinclude:amiga20/libraries/diskfont.h" 5
  10884.  
  10885.  
  10886.  
  10887.  
  10888.  
  10889.  
  10890.  
  10891.  
  10892.  
  10893.  
  10894.  
  10895.  
  10896.  
  10897.  
  10898.  
  10899.  
  10900.  
  10901.  
  10902.  
  10903.  
  10904.  
  10905.  
  10906.  
  10907.  
  10908.  
  10909.  
  10910.  
  10911.  
  10912.  
  10913. struct FontContents {
  10914.     char    fc_FileName[256];
  10915.     UWORD   fc_YSize;
  10916.     UBYTE   fc_Style;
  10917.     UBYTE   fc_Flags;
  10918. };
  10919.  
  10920. struct TFontContents {
  10921.     char    tfc_FileName[256-2];
  10922.     UWORD   tfc_TagCount;     
  10923.     
  10924.  
  10925.  
  10926.  
  10927.  
  10928.     UWORD   tfc_YSize;
  10929.     UBYTE   tfc_Style;
  10930.     UBYTE   tfc_Flags;
  10931. };
  10932.  
  10933.  
  10934.  
  10935.  
  10936.  
  10937. struct FontContentsHeader {
  10938.     UWORD   fch_FileID;         
  10939.     UWORD   fch_NumEntries;     
  10940.      
  10941. };
  10942.  
  10943.  
  10944.  
  10945.  
  10946.  
  10947. struct DiskFontHeader {
  10948.      
  10949.      
  10950.      
  10951.      
  10952.      
  10953.      
  10954.      
  10955.     struct Node dfh_DF;         
  10956.     UWORD   dfh_FileID;         
  10957.     UWORD   dfh_Revision;     
  10958.     LONG    dfh_Segment;     
  10959.     char    dfh_Name[32];  
  10960.     struct TextFont dfh_TF;     
  10961. };
  10962.  
  10963.  
  10964.  
  10965.  
  10966.  
  10967.  
  10968.  
  10969.  
  10970.  
  10971.  
  10972.  
  10973.  
  10974.  
  10975.  
  10976.  
  10977.  
  10978. struct AvailFonts {
  10979.     UWORD   af_Type;         
  10980.     struct TextAttr af_Attr;     
  10981. };
  10982.  
  10983. struct TAvailFonts {
  10984.     UWORD   taf_Type;         
  10985.     struct TTextAttr taf_Attr;     
  10986. };
  10987.  
  10988. struct AvailFontsHeader {
  10989.     UWORD   afh_NumEntries;      
  10990.      
  10991. };
  10992.  
  10993.  
  10994.  
  10995. # 20 "dinclude:amiga20/clib/diskfont_protos.h" 4
  10996.  
  10997. # 20 "dinclude:amiga20/clib/diskfont_protos.h" 4
  10998.  
  10999. struct TextFont *OpenDiskFont( struct TextAttr *textAttr );
  11000. LONG AvailFonts( STRPTR buffer, long bufBytes, long flags );
  11001.  
  11002. struct FontContentsHeader *NewFontContents( BPTR fontsLock, STRPTR fontName );
  11003. void DisposeFontContents( struct FontContentsHeader *fontContentsHeader );
  11004.  
  11005. struct DiskFontHeader *NewScaledDiskFont( struct TextFont *sourceFont,
  11006.     struct TextAttr *destTextAttr );
  11007.  
  11008.  
  11009. # 7 "dinclude:clib/diskfont_protos.h" 3
  11010.  
  11011. # 7 "dinclude:clib/diskfont_protos.h" 3
  11012.  
  11013.  
  11014.  
  11015.  
  11016.  
  11017.  
  11018.  
  11019.  
  11020. # 45 "local/defs.h" 2
  11021.  
  11022. # 45 "local/defs.h" 2
  11023.  
  11024. # 1 "dinclude:clib/graphics_protos.h" 3
  11025.  
  11026.  
  11027.  
  11028.  
  11029. # 1 "dinclude:amiga20/pragmas/config.h" 4
  11030.  
  11031.  
  11032.  
  11033.  
  11034.  
  11035.  
  11036.  
  11037.  
  11038. # 5 "dinclude:clib/graphics_protos.h" 3
  11039.  
  11040. # 5 "dinclude:clib/graphics_protos.h" 3
  11041.  
  11042. # 1 "dinclude:amiga20/exec/types.h" 4
  11043.  
  11044.  
  11045.  
  11046.  
  11047.  
  11048.  
  11049.  
  11050.  
  11051.  
  11052.  
  11053.  
  11054.  
  11055.  
  11056.  
  11057.  
  11058.  
  11059.  
  11060.  
  11061.  
  11062.  
  11063.  
  11064.  
  11065.  
  11066.  
  11067.  
  11068.  
  11069.  
  11070.  
  11071.  
  11072.  
  11073.  
  11074.  
  11075.  
  11076.  
  11077.  
  11078.  
  11079.  
  11080.  
  11081.  
  11082.  
  11083.  
  11084.  
  11085.  
  11086.  
  11087.  
  11088.  
  11089.  
  11090.  
  11091.  
  11092.  
  11093.  
  11094.  
  11095.  
  11096.  
  11097.  
  11098.  
  11099.  
  11100.  
  11101.  
  11102.  
  11103.  
  11104.  
  11105.  
  11106.  
  11107.  
  11108.  
  11109.  
  11110.  
  11111.  
  11112.  
  11113.  
  11114.  
  11115.  
  11116.  
  11117.  
  11118.  
  11119.  
  11120.  
  11121.  
  11122.  
  11123.  
  11124.  
  11125.  
  11126.  
  11127.  
  11128.  
  11129.  
  11130.  
  11131.  
  11132. # 6 "dinclude:clib/graphics_protos.h" 3
  11133.  
  11134. # 6 "dinclude:clib/graphics_protos.h" 3
  11135.  
  11136. # 1 "dinclude:amiga20/clib/graphics_protos.h" 4
  11137.  
  11138.  
  11139.  
  11140.  
  11141.  
  11142.  
  11143.  
  11144.  
  11145.  
  11146.  
  11147.  
  11148.  
  11149.  
  11150.  
  11151.  
  11152.  
  11153.  
  11154.  
  11155.  
  11156.  
  11157.  
  11158.  
  11159. # 1 "dinclude:amiga20/graphics/gels.h" 5
  11160.  
  11161.  
  11162.  
  11163.  
  11164.  
  11165.  
  11166.  
  11167.  
  11168.  
  11169.  
  11170.  
  11171.  
  11172.  
  11173.  
  11174.  
  11175.  
  11176.  
  11177.  
  11178.  
  11179.  
  11180.  
  11181.  
  11182.  
  11183.  
  11184.  
  11185.  
  11186.  
  11187.  
  11188.  
  11189.  
  11190.  
  11191.  
  11192.  
  11193.  
  11194.  
  11195.  
  11196.  
  11197.  
  11198.  
  11199.  
  11200.  
  11201.  
  11202.  
  11203.  
  11204.  
  11205.  
  11206.  
  11207.  
  11208.  
  11209.  
  11210.  
  11211.  
  11212.  
  11213.  
  11214.  
  11215.  
  11216.  
  11217.  
  11218.  
  11219.  
  11220.  
  11221.  
  11222.  
  11223.  
  11224.  
  11225.  
  11226.  
  11227.  
  11228.  
  11229.  
  11230.  
  11231.  
  11232.  
  11233. struct VSprite
  11234. {
  11235.  
  11236.  
  11237.     struct VSprite   *NextVSprite;
  11238.     struct VSprite   *PrevVSprite;
  11239.  
  11240.  
  11241.  
  11242.  
  11243.  
  11244.     struct VSprite   *DrawPath;      
  11245.     struct VSprite   *ClearPath;     
  11246.  
  11247.  
  11248.  
  11249.  
  11250.     WORD OldY, OldX;           
  11251.  
  11252.  
  11253.     WORD Flags;           
  11254.  
  11255.  
  11256.  
  11257.  
  11258.  
  11259.  
  11260.     WORD Y, X;               
  11261.  
  11262.     WORD Height;
  11263.     WORD Width;           
  11264.     WORD Depth;           
  11265.  
  11266.     WORD MeMask;           
  11267.     WORD HitMask;           
  11268.  
  11269.     WORD *ImageData;           
  11270.  
  11271.  
  11272.  
  11273.  
  11274.     WORD *BorderLine;           
  11275.     WORD *CollMask;           
  11276.  
  11277.  
  11278.     WORD *SprColors;
  11279.  
  11280.     struct Bob *VSBob;          
  11281.  
  11282.  
  11283.  
  11284.  
  11285.  
  11286.  
  11287.  
  11288.  
  11289.  
  11290.  
  11291.  
  11292.  
  11293.  
  11294.     BYTE PlanePick;
  11295.     BYTE PlaneOnOff;
  11296.  
  11297.     WORD VUserExt;       
  11298. };
  11299.  
  11300. struct Bob
  11301.  
  11302. {
  11303.  
  11304.  
  11305.  
  11306.     WORD Flags;     
  11307.  
  11308.  
  11309.     WORD *SaveBuffer;     
  11310.  
  11311.  
  11312.     WORD *ImageShadow;
  11313.  
  11314.  
  11315.  
  11316.  
  11317.     struct Bob *Before;  
  11318.     struct Bob *After;     
  11319.  
  11320.     struct VSprite   *BobVSprite;    
  11321.  
  11322.     struct AnimComp  *BobComp;         
  11323.  
  11324.     struct DBufPacket *DBuffer;      
  11325.  
  11326.     WORD BUserExt;         
  11327. };
  11328.  
  11329. struct AnimComp
  11330. {
  11331.  
  11332.  
  11333.  
  11334.     WORD Flags;             
  11335.  
  11336.  
  11337.  
  11338.  
  11339.  
  11340.     WORD Timer;
  11341.  
  11342.  
  11343.  
  11344.     WORD TimeSet;
  11345.  
  11346.  
  11347.     struct AnimComp  *NextComp;
  11348.     struct AnimComp  *PrevComp;
  11349.  
  11350.  
  11351.     struct AnimComp  *NextSeq;
  11352.     struct AnimComp  *PrevSeq;
  11353.  
  11354.     WORD (*AnimCRoutine)();  
  11355.  
  11356.     WORD YTrans;      
  11357.     WORD XTrans;      
  11358.  
  11359.     struct AnimOb    *HeadOb;
  11360.  
  11361.     struct Bob         *AnimBob;
  11362. };
  11363.  
  11364. struct AnimOb
  11365. {
  11366.  
  11367.     struct AnimOb    *NextOb, *PrevOb;
  11368.  
  11369.  
  11370.     LONG Clock;
  11371.  
  11372.     WORD AnOldY, AnOldX;         
  11373.  
  11374.  
  11375.     WORD AnY, AnX;             
  11376.  
  11377.  
  11378.     WORD YVel, XVel;             
  11379.     WORD YAccel, XAccel;         
  11380.  
  11381.     WORD RingYTrans, RingXTrans;     
  11382.  
  11383.     WORD (*AnimORoutine)();        
  11384.  
  11385.  
  11386.     struct AnimComp  *HeadComp;      
  11387.  
  11388.     WORD AUserExt;         
  11389. };
  11390.  
  11391.  
  11392.  
  11393.  
  11394. struct DBufPacket
  11395. {
  11396.     WORD BufY, BufX;             
  11397.     struct VSprite   *BufPath;         
  11398.  
  11399.  
  11400.  
  11401.     WORD *BufBuffer;
  11402. };
  11403.  
  11404.  
  11405.  
  11406.  
  11407.  
  11408.  
  11409.  
  11410.  
  11411.  
  11412.  
  11413.  
  11414.  
  11415.  
  11416.  
  11417.  
  11418.  
  11419.  
  11420.  
  11421.  
  11422.  
  11423.  
  11424. struct collTable
  11425. {
  11426.     int (*collPtrs[16])();
  11427. };
  11428.  
  11429.  
  11430.  
  11431. # 23 "dinclude:amiga20/clib/graphics_protos.h" 4
  11432.  
  11433. # 23 "dinclude:amiga20/clib/graphics_protos.h" 4
  11434.  
  11435.  
  11436.  
  11437.  
  11438.  
  11439.  
  11440.  
  11441.  
  11442.  
  11443.  
  11444.  
  11445.  
  11446.  
  11447.  
  11448.  
  11449. # 1 "dinclude:amiga20/graphics/regions.h" 5
  11450.  
  11451.  
  11452.  
  11453.  
  11454.  
  11455.  
  11456.  
  11457.  
  11458.  
  11459.  
  11460.  
  11461.  
  11462.  
  11463.  
  11464.  
  11465.  
  11466.  
  11467.  
  11468.  
  11469.  
  11470.  
  11471.  
  11472. struct RegionRectangle
  11473. {
  11474.     struct RegionRectangle *Next,*Prev;
  11475.     struct Rectangle bounds;
  11476. };
  11477.  
  11478. struct Region
  11479. {
  11480.     struct Rectangle bounds;
  11481.     struct RegionRectangle *RegionRectangle;
  11482. };
  11483.  
  11484.  
  11485.  
  11486. # 38 "dinclude:amiga20/clib/graphics_protos.h" 4
  11487.  
  11488. # 38 "dinclude:amiga20/clib/graphics_protos.h" 4
  11489.  
  11490.  
  11491.  
  11492. # 1 "dinclude:amiga20/graphics/sprite.h" 5
  11493.  
  11494.  
  11495.  
  11496.  
  11497.  
  11498.  
  11499.  
  11500.  
  11501.  
  11502.  
  11503.  
  11504.  
  11505.  
  11506.  
  11507.  
  11508.  
  11509.  
  11510.  
  11511.  
  11512.  
  11513. struct SimpleSprite
  11514. {
  11515.     UWORD *posctldata;
  11516.     UWORD height;
  11517.     UWORD   x,y;     
  11518.     UWORD   num;
  11519. };
  11520.  
  11521.  
  11522.  
  11523. # 41 "dinclude:amiga20/clib/graphics_protos.h" 4
  11524.  
  11525. # 41 "dinclude:amiga20/clib/graphics_protos.h" 4
  11526.  
  11527.  
  11528.  
  11529.  
  11530.  
  11531.  
  11532. # 1 "dinclude:amiga20/hardware/blit.h" 5
  11533.  
  11534.  
  11535.  
  11536.  
  11537.  
  11538.  
  11539.  
  11540.  
  11541.  
  11542.  
  11543.  
  11544.  
  11545.  
  11546.  
  11547.  
  11548.  
  11549.  
  11550.  
  11551.  
  11552.  
  11553.  
  11554.  
  11555.  
  11556.  
  11557.  
  11558.  
  11559.  
  11560.  
  11561.  
  11562.  
  11563.  
  11564.  
  11565.  
  11566.  
  11567.  
  11568.  
  11569.  
  11570.  
  11571.  
  11572.  
  11573.  
  11574.  
  11575.  
  11576.  
  11577.  
  11578.  
  11579.  
  11580.  
  11581.  
  11582.  
  11583.  
  11584.  
  11585.  
  11586.  
  11587.  
  11588.  
  11589.  
  11590.  
  11591.  
  11592.  
  11593.  
  11594.  
  11595.  
  11596.  
  11597.  
  11598.  
  11599.  
  11600.  
  11601.  
  11602.  
  11603.  
  11604.  
  11605.  
  11606.  
  11607.  
  11608.  
  11609.  
  11610.  
  11611.  
  11612.  
  11613.  
  11614.  
  11615.  
  11616.  
  11617.  
  11618.  
  11619.  
  11620.  
  11621.  
  11622. struct bltnode
  11623. {
  11624.     struct  bltnode *n;
  11625.     int     (*function)();
  11626.     char    stat;
  11627.     short   blitsize;
  11628.     short   beamsync;
  11629.     int     (*cleanup)();
  11630. };
  11631.  
  11632.  
  11633.  
  11634.  
  11635.  
  11636.  
  11637.  
  11638. # 47 "dinclude:amiga20/clib/graphics_protos.h" 4
  11639.  
  11640. # 47 "dinclude:amiga20/clib/graphics_protos.h" 4
  11641.  
  11642.  
  11643. LONG BltBitMap( struct BitMap *srcBitMap, long xSrc, long ySrc,
  11644.     struct BitMap *destBitMap, long xDest, long yDest, long xSize,
  11645.     long ySize, unsigned long minterm, unsigned long mask,
  11646.     PLANEPTR tempA );
  11647. void BltTemplate( PLANEPTR source, long xSrc, long srcMod,
  11648.     struct RastPort *destRP, long xDest, long yDest, long xSize,
  11649.     long ySize );
  11650.  
  11651. void ClearEOL( struct RastPort *rp );
  11652. void ClearScreen( struct RastPort *rp );
  11653. WORD TextLength( struct RastPort *rp, STRPTR string, unsigned long count );
  11654. LONG Text( struct RastPort *rp, STRPTR string, unsigned long count );
  11655. LONG SetFont( struct RastPort *rp, struct TextFont *textFont );
  11656. struct TextFont *OpenFont( struct TextAttr *textAttr );
  11657. void CloseFont( struct TextFont *textFont );
  11658. ULONG AskSoftStyle( struct RastPort *rp );
  11659. ULONG SetSoftStyle( struct RastPort *rp, unsigned long style,
  11660.     unsigned long enable );
  11661.  
  11662. void AddBob( struct Bob *bob, struct RastPort *rp );
  11663. void AddVSprite( struct VSprite *vSprite, struct RastPort *rp );
  11664. void DoCollision( struct RastPort *rp );
  11665. void DrawGList( struct RastPort *rp, struct ViewPort *vp );
  11666. void InitGels( struct VSprite *head, struct VSprite *tail,
  11667.     struct GelsInfo *gelsInfo );
  11668. void InitMasks( struct VSprite *vSprite );
  11669. void RemIBob( struct Bob *bob, struct RastPort *rp, struct ViewPort *vp );
  11670. void RemVSprite( struct VSprite *vSprite );
  11671. void SetCollision( unsigned long num,
  11672.     void (*routine)(struct VSprite *vSprite, APTR),
  11673.     struct GelsInfo *gelsInfo );
  11674. void SortGList( struct RastPort *rp );
  11675. void AddAnimOb( struct AnimOb *anOb, struct AnimOb **anKey,
  11676.     struct RastPort *rp );
  11677. void Animate( struct AnimOb **anKey, struct RastPort *rp );
  11678. BOOL GetGBuffers( struct AnimOb *anOb, struct RastPort *rp, long flag );
  11679. void InitGMasks( struct AnimOb *anOb );
  11680.  
  11681. void DrawEllipse( struct RastPort *rp, long xCenter, long yCenter, long a,
  11682.     long b );
  11683. LONG AreaEllipse( struct RastPort *rp, long xCenter, long yCenter, long a,
  11684.     long b );
  11685. void LoadRGB4( struct ViewPort *vp, UWORD *colors, long count );
  11686. void InitRastPort( struct RastPort *rp );
  11687. void InitVPort( struct ViewPort *vp );
  11688. void MrgCop( struct View *view );
  11689. void MakeVPort( struct View *view, struct ViewPort *vp );
  11690. void LoadView( struct View *view );
  11691. void WaitBlit( void );
  11692. void SetRast( struct RastPort *rp, unsigned long pen );
  11693. void Move( struct RastPort *rp, long x, long y );
  11694. void Draw( struct RastPort *rp, long x, long y );
  11695. LONG AreaMove( struct RastPort *rp, long x, long y );
  11696. LONG AreaDraw( struct RastPort *rp, long x, long y );
  11697. LONG AreaEnd( struct RastPort *rp );
  11698. void WaitTOF( void );
  11699. void QBlit( struct bltnode *blit );
  11700. void InitArea( struct AreaInfo *areaInfo, APTR vectorBuffer,
  11701.     long maxVectors );
  11702. void SetRGB4( struct ViewPort *vp, long index, unsigned long red,
  11703.     unsigned long green, unsigned long blue );
  11704. void QBSBlit( struct bltnode *blit );
  11705. void BltClear( PLANEPTR memBlock, unsigned long byteCount,
  11706.     unsigned long flags );
  11707. void RectFill( struct RastPort *rp, long xMin, long yMin, long xMax,
  11708.     long yMax );
  11709. void BltPattern( struct RastPort *rp, PLANEPTR mask, long xMin, long yMin,
  11710.     long xMax, long yMax, unsigned long maskBPR );
  11711. ULONG ReadPixel( struct RastPort *rp, long x, long y );
  11712. LONG WritePixel( struct RastPort *rp, long x, long y );
  11713. BOOL Flood( struct RastPort *rp, unsigned long mode, long x, long y );
  11714. void PolyDraw( struct RastPort *rp, long count, WORD *polyTable );
  11715. void SetAPen( struct RastPort *rp, unsigned long pen );
  11716. void SetBPen( struct RastPort *rp, unsigned long pen );
  11717. void SetDrMd( struct RastPort *rp, unsigned long drawMode );
  11718. void InitView( struct View *view );
  11719. void CBump( struct UCopList *copList );
  11720. void CMove( struct UCopList *copList, APTR destination, long data );
  11721. void CWait( struct UCopList *copList, long v, long h );
  11722. LONG VBeamPos( void );
  11723. void InitBitMap( struct BitMap *bitMap, long depth, long width, long height );
  11724. void ScrollRaster( struct RastPort *rp, long dx, long dy, long xMin, long yMin,
  11725.     long xMax, long yMax );
  11726. void WaitBOVP( struct ViewPort *vp );
  11727. WORD GetSprite( struct SimpleSprite *sprite, long num );
  11728. void FreeSprite( long num );
  11729. void ChangeSprite( struct ViewPort *vp, struct SimpleSprite *sprite,
  11730.     PLANEPTR newData );
  11731. void MoveSprite( struct ViewPort *vp, struct SimpleSprite *sprite, long x,
  11732.     long y );
  11733. void LockLayerRom( struct Layer *layer );
  11734. void UnlockLayerRom( struct Layer *layer );
  11735. void SyncSBitMap( struct Layer *layer );
  11736. void CopySBitMap( struct Layer *layer );
  11737. void OwnBlitter( void );
  11738. void DisownBlitter( void );
  11739. struct TmpRas *InitTmpRas( struct TmpRas *tmpRas, PLANEPTR buffer,
  11740.     long size );
  11741. void AskFont( struct RastPort *rp, struct TextAttr *textAttr );
  11742. void AddFont( struct TextFont *textFont );
  11743. void RemFont( struct TextFont *textFont );
  11744. PLANEPTR AllocRaster( unsigned long width, unsigned long height );
  11745. void FreeRaster( PLANEPTR p, unsigned long width, unsigned long height );
  11746. void AndRectRegion( struct Region *region, struct Rectangle *rectangle );
  11747. BOOL OrRectRegion( struct Region *region, struct Rectangle *rectangle );
  11748. struct Region *NewRegion( void );
  11749. BOOL ClearRectRegion( struct Region *region, struct Rectangle *rectangle );
  11750. void ClearRegion( struct Region *region );
  11751. void DisposeRegion( struct Region *region );
  11752. void FreeVPortCopLists( struct ViewPort *vp );
  11753. void FreeCopList( struct CopList *copList );
  11754. void ClipBlit( struct RastPort *srcRP, long xSrc, long ySrc,
  11755.     struct RastPort *destRP, long xDest, long yDest, long xSize,
  11756.     long ySize, unsigned long minterm );
  11757. BOOL XorRectRegion( struct Region *region, struct Rectangle *rectangle );
  11758. void FreeCprList( struct cprlist *cprList );
  11759. struct ColorMap *GetColorMap( long entries );
  11760. void FreeColorMap( struct ColorMap *colorMap );
  11761. ULONG GetRGB4( struct ColorMap *colorMap, long entry );
  11762. void ScrollVPort( struct ViewPort *vp );
  11763. struct CopList *UCopperListInit( struct UCopList *uCopList, long n );
  11764. void FreeGBuffers( struct AnimOb *anOb, struct RastPort *rp, long flag );
  11765. void BltBitMapRastPort( struct BitMap *srcBitMap, long xSrc, long ySrc,
  11766.     struct RastPort *destRP, long xDest, long yDest, long xSize,
  11767.     long ySize, unsigned long minterm );
  11768. BOOL OrRegionRegion( struct Region *srcRegion, struct Region *destRegion );
  11769. BOOL XorRegionRegion( struct Region *srcRegion, struct Region *destRegion );
  11770. BOOL AndRegionRegion( struct Region *srcRegion, struct Region *destRegion );
  11771. void SetRGB4CM( struct ColorMap *colorMap, long index, unsigned long red,
  11772.     unsigned long green, unsigned long blue );
  11773. void BltMaskBitMapRastPort( struct BitMap *srcBitMap, long xSrc, long ySrc,
  11774.     struct RastPort *destRP, long xDest, long yDest, long xSize,
  11775.     long ySize, unsigned long minterm, PLANEPTR bltMask );
  11776. BOOL AttemptLockLayerRom( struct Layer *layer );
  11777.  
  11778. APTR GfxNew( unsigned long gfxNodeType );
  11779. void GfxFree( APTR gfxNodePtr );
  11780. void GfxAssociate( APTR associateNode, APTR gfxNodePtr );
  11781. void BitMapScale( struct BitScaleArgs *bitScaleArgs );
  11782. UWORD ScalerDiv( unsigned long factor, unsigned long numerator,
  11783.     unsigned long denominator );
  11784. WORD TextExtent( struct RastPort *rp, STRPTR string, long count,
  11785.     struct TextExtent *textExtent );
  11786. ULONG TextFit( struct RastPort *rp, STRPTR string, unsigned long strLen,
  11787.     struct TextExtent *textExtent, struct TextExtent *constrainingExtent,
  11788.     long strDirection, unsigned long constrainingBitWidth,
  11789.     unsigned long constrainingBitHeight );
  11790. APTR GfxLookUp( APTR associateNode );
  11791. BOOL VideoControl( struct ColorMap *colorMap, struct TagItem *tagarray );
  11792. struct MonitorSpec *OpenMonitor( STRPTR monitorName,
  11793.     unsigned long displayID );
  11794. BOOL CloseMonitor( struct MonitorSpec *monitorSpec );
  11795. DisplayInfoHandle FindDisplayInfo( unsigned long displayID );
  11796. ULONG NextDisplayInfo( unsigned long displayID );
  11797. ULONG GetDisplayInfoData( DisplayInfoHandle handle, UBYTE *buf,
  11798.     unsigned long size, unsigned long tagID, unsigned long displayID );
  11799. void FontExtent( struct TextFont *font, struct TextExtent *fontExtent );
  11800. LONG ReadPixelLine8( struct RastPort *rp, unsigned long xstart,
  11801.     unsigned long ystart, unsigned long width, UBYTE *array,
  11802.     struct RastPort *tempRP );
  11803. LONG WritePixelLine8( struct RastPort *rp, unsigned long xstart,
  11804.     unsigned long ystart, unsigned long width, UBYTE *array,
  11805.     struct RastPort *tempRP );
  11806. LONG ReadPixelArray8( struct RastPort *rp, unsigned long xstart,
  11807.     unsigned long ystart, unsigned long xstop, unsigned long ystop,
  11808.     UBYTE *array, struct RastPort *temprp );
  11809. LONG WritePixelArray8( struct RastPort *rp, unsigned long xstart,
  11810.     unsigned long ystart, unsigned long xstop, unsigned long ystop,
  11811.     UBYTE *array, struct RastPort *temprp );
  11812. LONG GetVPModeID( struct ViewPort *vp );
  11813. LONG ModeNotAvailable( unsigned long modeID );
  11814. WORD WeighTAMatch( struct TextAttr *reqTextAttr,
  11815.     struct TextAttr *targetTextAttr, struct TagItem *targetTags );
  11816. void EraseRect( struct RastPort *rp, long xMin, long yMin, long xMax,
  11817.     long yMax );
  11818. ULONG ExtendFont( struct TextFont *font, struct TagItem *fontTags );
  11819. void StripFont( struct TextFont *font );
  11820.  
  11821.  
  11822. # 7 "dinclude:clib/graphics_protos.h" 3
  11823.  
  11824. # 7 "dinclude:clib/graphics_protos.h" 3
  11825.  
  11826.  
  11827.  
  11828.  
  11829.  
  11830.  
  11831.  
  11832.  
  11833. # 46 "local/defs.h" 2
  11834.  
  11835. # 46 "local/defs.h" 2
  11836.  
  11837. # 1 "dinclude:clib/gadtools_protos.h" 3
  11838.  
  11839.  
  11840.  
  11841.  
  11842. # 1 "dinclude:amiga20/pragmas/config.h" 4
  11843.  
  11844.  
  11845.  
  11846.  
  11847.  
  11848.  
  11849.  
  11850.  
  11851. # 5 "dinclude:clib/gadtools_protos.h" 3
  11852.  
  11853. # 5 "dinclude:clib/gadtools_protos.h" 3
  11854.  
  11855. # 1 "dinclude:amiga20/exec/types.h" 4
  11856.  
  11857.  
  11858.  
  11859.  
  11860.  
  11861.  
  11862.  
  11863.  
  11864.  
  11865.  
  11866.  
  11867.  
  11868.  
  11869.  
  11870.  
  11871.  
  11872.  
  11873.  
  11874.  
  11875.  
  11876.  
  11877.  
  11878.  
  11879.  
  11880.  
  11881.  
  11882.  
  11883.  
  11884.  
  11885.  
  11886.  
  11887.  
  11888.  
  11889.  
  11890.  
  11891.  
  11892.  
  11893.  
  11894.  
  11895.  
  11896.  
  11897.  
  11898.  
  11899.  
  11900.  
  11901.  
  11902.  
  11903.  
  11904.  
  11905.  
  11906.  
  11907.  
  11908.  
  11909.  
  11910.  
  11911.  
  11912.  
  11913.  
  11914.  
  11915.  
  11916.  
  11917.  
  11918.  
  11919.  
  11920.  
  11921.  
  11922.  
  11923.  
  11924.  
  11925.  
  11926.  
  11927.  
  11928.  
  11929.  
  11930.  
  11931.  
  11932.  
  11933.  
  11934.  
  11935.  
  11936.  
  11937.  
  11938.  
  11939.  
  11940.  
  11941.  
  11942.  
  11943.  
  11944.  
  11945. # 6 "dinclude:clib/gadtools_protos.h" 3
  11946.  
  11947. # 6 "dinclude:clib/gadtools_protos.h" 3
  11948.  
  11949. # 1 "dinclude:amiga20/clib/gadtools_protos.h" 4
  11950.  
  11951.  
  11952.  
  11953.  
  11954.  
  11955.  
  11956.  
  11957.  
  11958.  
  11959.  
  11960.  
  11961.  
  11962.  
  11963.  
  11964.  
  11965.  
  11966.  
  11967.  
  11968.  
  11969.  
  11970.  
  11971.  
  11972.  
  11973.  
  11974.  
  11975.  
  11976.  
  11977.  
  11978.  
  11979.  
  11980. struct Gadget *CreateGadgetA( unsigned long kind, struct Gadget *gad,
  11981.     struct NewGadget *ng, struct TagItem *taglist );
  11982. struct Gadget *CreateGadget( unsigned long kind, struct Gadget *gad,
  11983.     struct NewGadget *ng, Tag tag1, ... );
  11984. void FreeGadgets( struct Gadget *gad );
  11985. void GT_SetGadgetAttrsA( struct Gadget *gad, struct Window *win,
  11986.     struct Requester *req, struct TagItem *taglist );
  11987. void GT_SetGadgetAttrs( struct Gadget *gad, struct Window *win,
  11988.     struct Requester *req, Tag tag1, ... );
  11989.  
  11990.  
  11991.  
  11992. struct Menu *CreateMenusA( struct NewMenu *newmenu, struct TagItem *taglist );
  11993. struct Menu *CreateMenus( struct NewMenu *newmenu, Tag tag1, ... );
  11994. void FreeMenus( struct Menu *menu );
  11995. BOOL LayoutMenuItemsA( struct MenuItem *firstitem, APTR vi,
  11996.     struct TagItem *taglist );
  11997. BOOL LayoutMenuItems( struct MenuItem *firstitem, APTR vi, Tag tag1, ... );
  11998. BOOL LayoutMenusA( struct Menu *firstmenu, APTR vi, struct TagItem *taglist );
  11999. BOOL LayoutMenus( struct Menu *firstmenu, APTR vi, Tag tag1, ... );
  12000.  
  12001.  
  12002.  
  12003. struct IntuiMessage *GT_GetIMsg( struct MsgPort *iport );
  12004. void GT_ReplyIMsg( struct IntuiMessage *imsg );
  12005. void GT_RefreshWindow( struct Window *win, struct Requester *req );
  12006. void GT_BeginRefresh( struct Window *win );
  12007. void GT_EndRefresh( struct Window *win, long complete );
  12008. struct IntuiMessage *GT_FilterIMsg( struct IntuiMessage *imsg );
  12009. struct IntuiMessage *GT_PostFilterIMsg( struct IntuiMessage *imsg );
  12010. struct Gadget *CreateContext( struct Gadget **glistptr );
  12011.  
  12012.  
  12013.  
  12014. void DrawBevelBoxA( struct RastPort *rport, long left, long top, long width,
  12015.     long height, struct TagItem *taglist );
  12016. void DrawBevelBox( struct RastPort *rport, long left, long top, long width,
  12017.     long height, Tag tag1, ... );
  12018.  
  12019.  
  12020.  
  12021. APTR GetVisualInfoA( struct Screen *screen, struct TagItem *taglist );
  12022. APTR GetVisualInfo( struct Screen *screen, Tag tag1, ... );
  12023. void FreeVisualInfo( APTR vi );
  12024.  
  12025.  
  12026.  
  12027.  
  12028.  
  12029. # 7 "dinclude:clib/gadtools_protos.h" 3
  12030.  
  12031. # 7 "dinclude:clib/gadtools_protos.h" 3
  12032.  
  12033.  
  12034.  
  12035.  
  12036.  
  12037.  
  12038.  
  12039.  
  12040. # 47 "local/defs.h" 2
  12041.  
  12042. # 47 "local/defs.h" 2
  12043.  
  12044. # 1 "dinclude:clib/asl_protos.h" 3
  12045.  
  12046.  
  12047.  
  12048.  
  12049. # 1 "dinclude:amiga20/pragmas/config.h" 4
  12050.  
  12051.  
  12052.  
  12053.  
  12054.  
  12055.  
  12056.  
  12057.  
  12058. # 5 "dinclude:clib/asl_protos.h" 3
  12059.  
  12060. # 5 "dinclude:clib/asl_protos.h" 3
  12061.  
  12062. # 1 "dinclude:amiga20/exec/types.h" 4
  12063.  
  12064.  
  12065.  
  12066.  
  12067.  
  12068.  
  12069.  
  12070.  
  12071.  
  12072.  
  12073.  
  12074.  
  12075.  
  12076.  
  12077.  
  12078.  
  12079.  
  12080.  
  12081.  
  12082.  
  12083.  
  12084.  
  12085.  
  12086.  
  12087.  
  12088.  
  12089.  
  12090.  
  12091.  
  12092.  
  12093.  
  12094.  
  12095.  
  12096.  
  12097.  
  12098.  
  12099.  
  12100.  
  12101.  
  12102.  
  12103.  
  12104.  
  12105.  
  12106.  
  12107.  
  12108.  
  12109.  
  12110.  
  12111.  
  12112.  
  12113.  
  12114.  
  12115.  
  12116.  
  12117.  
  12118.  
  12119.  
  12120.  
  12121.  
  12122.  
  12123.  
  12124.  
  12125.  
  12126.  
  12127.  
  12128.  
  12129.  
  12130.  
  12131.  
  12132.  
  12133.  
  12134.  
  12135.  
  12136.  
  12137.  
  12138.  
  12139.  
  12140.  
  12141.  
  12142.  
  12143.  
  12144.  
  12145.  
  12146.  
  12147.  
  12148.  
  12149.  
  12150.  
  12151.  
  12152. # 6 "dinclude:clib/asl_protos.h" 3
  12153.  
  12154. # 6 "dinclude:clib/asl_protos.h" 3
  12155.  
  12156. # 1 "dinclude:amiga20/clib/asl_protos.h" 4
  12157.  
  12158.  
  12159.  
  12160.  
  12161.  
  12162.  
  12163.  
  12164.  
  12165.  
  12166.  
  12167.  
  12168.  
  12169.  
  12170.  
  12171.  
  12172.  
  12173.  
  12174.  
  12175.  
  12176.  
  12177.  
  12178.  
  12179. # 1 "dinclude:amiga20/libraries/asl.h" 5
  12180.  
  12181.  
  12182.  
  12183.  
  12184.  
  12185.  
  12186.  
  12187.  
  12188.  
  12189.  
  12190.  
  12191.  
  12192.  
  12193.  
  12194.  
  12195.  
  12196.  
  12197.  
  12198.  
  12199.  
  12200.  
  12201.  
  12202.  
  12203.  
  12204.  
  12205.  
  12206.  
  12207.  
  12208.  
  12209.  
  12210.  
  12211.  
  12212.  
  12213.  
  12214.  
  12215.  
  12216.  
  12217. # 1 "dinclude:amiga20/workbench/startup.h" 6
  12218.  
  12219.  
  12220.  
  12221.  
  12222.  
  12223.  
  12224.  
  12225.  
  12226.  
  12227.  
  12228.  
  12229.  
  12230.  
  12231.  
  12232.  
  12233.  
  12234.  
  12235.  
  12236.  
  12237.  
  12238.  
  12239.  
  12240.  
  12241.  
  12242. # 1 "dinclude:amiga20/libraries/dos.h" 7
  12243.  
  12244.  
  12245.  
  12246.  
  12247.  
  12248.  
  12249.  
  12250.  
  12251.  
  12252.  
  12253.  
  12254.  
  12255.  
  12256.  
  12257.  
  12258.  
  12259.  
  12260.  
  12261.  
  12262.  
  12263. # 25 "dinclude:amiga20/workbench/startup.h" 6
  12264.  
  12265. # 25 "dinclude:amiga20/workbench/startup.h" 6
  12266.  
  12267.  
  12268. struct WBStartup {
  12269.     struct Message    sm_Message;     
  12270.     struct MsgPort *    sm_Process;     
  12271.     BPTR        sm_Segment;     
  12272.     LONG        sm_NumArgs;     
  12273.     char *        sm_ToolWindow;     
  12274.     struct WBArg *    sm_ArgList;     
  12275. };
  12276.  
  12277. struct WBArg {
  12278.     BPTR        wa_Lock;     
  12279.     BYTE *        wa_Name;     
  12280. };
  12281.  
  12282.  
  12283.  
  12284. # 38 "dinclude:amiga20/libraries/asl.h" 5
  12285.  
  12286. # 38 "dinclude:amiga20/libraries/asl.h" 5
  12287.  
  12288.  
  12289.  
  12290.  
  12291.  
  12292.  
  12293.  
  12294.  
  12295.  
  12296.  
  12297.  
  12298.  
  12299.  
  12300.  
  12301.  
  12302.  
  12303.  
  12304.  
  12305.  
  12306.  
  12307.  
  12308.  
  12309.  
  12310.  
  12311.  
  12312.  
  12313.  
  12314. struct FileRequester    {
  12315.     APTR    rf_Reserved1;
  12316.     BYTE    *rf_File;     
  12317.     BYTE    *rf_Dir;     
  12318.     CPTR    rf_Reserved2;
  12319.     UBYTE    rf_Reserved3;
  12320.     UBYTE    rf_Reserved4;
  12321.     APTR    rf_Reserved5;
  12322.     WORD    rf_LeftEdge,rf_TopEdge;     
  12323.     WORD    rf_Width,rf_Height;    
  12324.     WORD    rf_Reserved6;
  12325.     LONG    rf_NumArgs;     
  12326.     struct WBArg *rf_ArgList;
  12327.     APTR    rf_UserData;     
  12328.     APTR    rf_Reserved7;
  12329.     APTR    rf_Reserved8;
  12330.     BYTE    *rf_Pat;     
  12331.     };             
  12332.  
  12333.  
  12334.  
  12335.  
  12336.  
  12337.  
  12338.  
  12339.  
  12340.  
  12341.  
  12342.  
  12343.  
  12344.  
  12345.  
  12346.  
  12347.  
  12348.  
  12349.  
  12350.  
  12351.  
  12352.  
  12353.  
  12354.  
  12355.  
  12356.  
  12357.                 
  12358.  
  12359.                 
  12360.                 
  12361.                 
  12362.  
  12363.  
  12364.  
  12365.                 
  12366.  
  12367.  
  12368.  
  12369.  
  12370.  
  12371.  
  12372.  
  12373.  
  12374.  
  12375.  
  12376.  
  12377.  
  12378.  
  12379.  
  12380.  
  12381.  
  12382.  
  12383.  
  12384.  
  12385.  
  12386.  
  12387.  
  12388.  
  12389.  
  12390.  
  12391.  
  12392.  
  12393.  
  12394.  
  12395.  
  12396. struct FontRequester    {
  12397.     APTR    fo_Reserved1[2];
  12398.     struct TextAttr fo_Attr;     
  12399.     UBYTE    fo_FrontPen;         
  12400.     UBYTE    fo_BackPen;
  12401.     UBYTE    fo_DrawMode;
  12402.     APTR    fo_UserData;
  12403.     };
  12404.  
  12405.  
  12406.  
  12407.  
  12408.  
  12409.  
  12410.  
  12411.  
  12412.  
  12413.  
  12414.  
  12415.  
  12416.                  
  12417.                  
  12418.                  
  12419.  
  12420.                  
  12421.  
  12422.  
  12423.  
  12424.  
  12425.  
  12426.  
  12427.  
  12428.  
  12429.  
  12430.  
  12431.  
  12432.  
  12433.  
  12434.  
  12435.  
  12436.  
  12437.  
  12438.  
  12439.  
  12440.  
  12441.  
  12442.  
  12443.  
  12444.  
  12445.  
  12446.  
  12447.  
  12448.  
  12449.  
  12450.  
  12451.  
  12452.  
  12453.  
  12454.  
  12455.  
  12456.  
  12457.  
  12458.  
  12459.  
  12460.  
  12461.  
  12462.  
  12463.  
  12464.  
  12465.  
  12466.  
  12467.  
  12468.  
  12469.  
  12470.  
  12471.  
  12472.  
  12473.  
  12474.  
  12475.  
  12476.  
  12477.  
  12478.  
  12479.  
  12480. # 23 "dinclude:amiga20/clib/asl_protos.h" 4
  12481.  
  12482. # 23 "dinclude:amiga20/clib/asl_protos.h" 4
  12483.  
  12484.  
  12485.  
  12486. struct FileRequester *AllocFileRequest( void );
  12487. void FreeFileRequest( struct FileRequester *fileReq );
  12488. BOOL RequestFile( struct FileRequester *fileReq );
  12489. APTR AllocAslRequest( unsigned long type, struct TagItem *tagList );
  12490. APTR AllocAslRequestTags( unsigned long type, Tag Tag1, ... );
  12491. void FreeAslRequest( APTR request );
  12492. BOOL AslRequest( APTR request, struct TagItem *tagList );
  12493. BOOL AslRequestTags( APTR request, Tag Tag1, ... );
  12494.  
  12495.  
  12496. # 7 "dinclude:clib/asl_protos.h" 3
  12497.  
  12498. # 7 "dinclude:clib/asl_protos.h" 3
  12499.  
  12500.  
  12501.  
  12502.  
  12503.  
  12504.  
  12505.  
  12506.  
  12507. # 48 "local/defs.h" 2
  12508.  
  12509. # 48 "local/defs.h" 2
  12510.  
  12511. # 1 "dinclude:clib/alib_protos.h" 3
  12512.  
  12513.  
  12514.  
  12515.  
  12516. # 1 "dinclude:amiga20/pragmas/config.h" 4
  12517.  
  12518.  
  12519.  
  12520.  
  12521.  
  12522.  
  12523.  
  12524.  
  12525. # 5 "dinclude:clib/alib_protos.h" 3
  12526.  
  12527. # 5 "dinclude:clib/alib_protos.h" 3
  12528.  
  12529. # 1 "dinclude:amiga20/exec/types.h" 4
  12530.  
  12531.  
  12532.  
  12533.  
  12534.  
  12535.  
  12536.  
  12537.  
  12538.  
  12539.  
  12540.  
  12541.  
  12542.  
  12543.  
  12544.  
  12545.  
  12546.  
  12547.  
  12548.  
  12549.  
  12550.  
  12551.  
  12552.  
  12553.  
  12554.  
  12555.  
  12556.  
  12557.  
  12558.  
  12559.  
  12560.  
  12561.  
  12562.  
  12563.  
  12564.  
  12565.  
  12566.  
  12567.  
  12568.  
  12569.  
  12570.  
  12571.  
  12572.  
  12573.  
  12574.  
  12575.  
  12576.  
  12577.  
  12578.  
  12579.  
  12580.  
  12581.  
  12582.  
  12583.  
  12584.  
  12585.  
  12586.  
  12587.  
  12588.  
  12589.  
  12590.  
  12591.  
  12592.  
  12593.  
  12594.  
  12595.  
  12596.  
  12597.  
  12598.  
  12599.  
  12600.  
  12601.  
  12602.  
  12603.  
  12604.  
  12605.  
  12606.  
  12607.  
  12608.  
  12609.  
  12610.  
  12611.  
  12612.  
  12613.  
  12614.  
  12615.  
  12616.  
  12617.  
  12618.  
  12619. # 6 "dinclude:clib/alib_protos.h" 3
  12620.  
  12621. # 6 "dinclude:clib/alib_protos.h" 3
  12622.  
  12623. # 1 "dinclude:amiga20/clib/alib_protos.h" 4
  12624.  
  12625.  
  12626.  
  12627.  
  12628.  
  12629.  
  12630.  
  12631.  
  12632.  
  12633.  
  12634.  
  12635.  
  12636.  
  12637.  
  12638.  
  12639.  
  12640.  
  12641.  
  12642.  
  12643.  
  12644.  
  12645. # 1 "dinclude:amiga20/libraries/mathffp.h" 5
  12646.  
  12647.  
  12648.  
  12649.  
  12650.  
  12651.  
  12652.  
  12653.  
  12654.  
  12655.  
  12656.  
  12657.  
  12658.  
  12659.  
  12660.  
  12661.  
  12662.  
  12663.  
  12664.  
  12665.  
  12666.  
  12667.  
  12668.  
  12669.  
  12670.  
  12671.  
  12672.  
  12673.  
  12674.  
  12675.  
  12676.  
  12677.  
  12678.  
  12679.  
  12680.  
  12681.  
  12682.  
  12683.  
  12684.  
  12685.  
  12686.  
  12687.  
  12688.  
  12689.  
  12690.  
  12691.  
  12692.  
  12693.  
  12694.  
  12695.  
  12696.  
  12697.  
  12698.  
  12699.  
  12700.  
  12701. int     SPFix();               
  12702. float     SPFlt();
  12703. int     SPCmp();
  12704. int     SPTst();
  12705. float     SPAbs();
  12706. float     SPFloor();
  12707. float     SPCeil();
  12708.  
  12709.  
  12710.  
  12711. float     SPNeg();
  12712. float     SPAdd();
  12713. float     SPSub();
  12714. float     SPMul();
  12715. float     SPDiv();
  12716.  
  12717. float     SPAsin(),  SPAcos(),  SPAtan();   
  12718. float     SPSin(),   SPCos(),   SPTan(),   SPSincos();
  12719. float     SPSinh(),  SPCosh(),  SPTanh();
  12720. float     SPExp(),   SPLog(),   SPLog10(), SPPow();
  12721. float     SPSqrt(),  SPFieee();
  12722.  
  12723. float     afp(),    dbf();           
  12724.  
  12725.  
  12726.  
  12727. # 22 "dinclude:amiga20/clib/alib_protos.h" 4
  12728.  
  12729. # 22 "dinclude:amiga20/clib/alib_protos.h" 4
  12730.  
  12731.  
  12732.  
  12733. # 1 "dinclude:amiga20/libraries/commodities.h" 5
  12734.  
  12735.  
  12736.  
  12737.  
  12738.  
  12739.  
  12740.  
  12741.  
  12742.  
  12743.  
  12744.  
  12745.  
  12746.  
  12747.  
  12748.  
  12749.  
  12750.  
  12751.  
  12752.  
  12753.  
  12754.  
  12755.  
  12756.  
  12757.  
  12758.  
  12759.  
  12760.  
  12761.  
  12762.  
  12763.  
  12764.  
  12765.  
  12766.  
  12767.  
  12768.  
  12769.  
  12770.  
  12771.  
  12772.  
  12773.  
  12774.  
  12775.  
  12776.  
  12777.  
  12778.  
  12779.  
  12780.  
  12781. struct NewBroker {
  12782.    BYTE     nb_Version;      
  12783.    BYTE     *nb_Name;
  12784.    BYTE     *nb_Title;
  12785.    BYTE     *nb_Descr;
  12786.    SHORT    nb_Unique;
  12787.    SHORT    nb_Flags;
  12788.    BYTE     nb_Pri;
  12789.     
  12790.    struct MsgPort   *nb_Port;
  12791.    WORD     nb_ReservedChannel;   
  12792. };
  12793.  
  12794.  
  12795.  
  12796.  
  12797.  
  12798.  
  12799.  
  12800.  
  12801.  
  12802.  
  12803.  
  12804.  
  12805.  
  12806.  
  12807.  
  12808. typedef LONG   CxObj;
  12809. typedef LONG   CxMsg;
  12810.  
  12811.  
  12812.  
  12813. typedef LONG   (*PFL)();
  12814.  
  12815.  
  12816.  
  12817.  
  12818.  
  12819.  
  12820.  
  12821.  
  12822.  
  12823.  
  12824.  
  12825.  
  12826.  
  12827.  
  12828.  
  12829.  
  12830.  
  12831.  
  12832.  
  12833.  
  12834.  
  12835.  
  12836.  
  12837.  
  12838.  
  12839.  
  12840.  
  12841.  
  12842.  
  12843.  
  12844.  
  12845.  
  12846.  
  12847.  
  12848.  
  12849.  
  12850.  
  12851.  
  12852.  
  12853.  
  12854.  
  12855.  
  12856.  
  12857.  
  12858.  
  12859.  
  12860.  
  12861.  
  12862.  
  12863.  
  12864.  
  12865.  
  12866.                    
  12867.  
  12868.  
  12869.  
  12870.  
  12871.  
  12872.  
  12873.  
  12874.  
  12875.  
  12876.  
  12877.  
  12878.  
  12879.  
  12880.  
  12881.  
  12882.  
  12883.  
  12884.  
  12885.  
  12886.  
  12887.  
  12888.  
  12889.  
  12890.  
  12891.  
  12892.  
  12893.  
  12894.  
  12895.  
  12896.  
  12897.  
  12898.  
  12899.  
  12900.  
  12901.  
  12902.  
  12903.  
  12904.  
  12905.  
  12906. struct InputXpression {
  12907.    UBYTE   ix_Version;        
  12908.    UBYTE   ix_Class;        
  12909.  
  12910.    UWORD   ix_Code;        
  12911.  
  12912.    UWORD   ix_CodeMask;     
  12913.                 
  12914.                             
  12915.  
  12916.    UWORD   ix_Qualifier;    
  12917.  
  12918.    UWORD   ix_QualMask;     
  12919.                 
  12920.                             
  12921.  
  12922.    UWORD   ix_QualSame;     
  12923.    };
  12924.  
  12925. typedef struct InputXpression IX;
  12926.  
  12927.  
  12928.  
  12929.  
  12930.  
  12931.  
  12932.  
  12933.  
  12934.  
  12935.  
  12936.  
  12937.  
  12938.  
  12939.  
  12940.  
  12941.  
  12942.  
  12943.  
  12944. # 25 "dinclude:amiga20/clib/alib_protos.h" 4
  12945.  
  12946. # 25 "dinclude:amiga20/clib/alib_protos.h" 4
  12947.  
  12948.  
  12949. void BeginIO( struct IORequest *io );
  12950. struct IORequest *CreateExtIO( struct MsgPort *msg, long size );
  12951. struct MsgPort *CreatePort( UBYTE *name, long pri );
  12952. struct IOStdReq *CreateStdIO( struct MsgPort *msg );
  12953. struct Task *CreateTask( UBYTE *name, long pri, APTR initPC,
  12954.     unsigned long stackSize );
  12955. void DeleteExtIO( struct IORequest *io );
  12956. void DeletePort( struct MsgPort *io );
  12957. void DeleteStdIO( struct IOStdReq *io );
  12958. void DeleteTask( struct Task *task );
  12959. void NewList( struct List *list );
  12960. LONG NameFromAnchor( struct AnchorPath *anchor, UBYTE *buffer, long buflen );
  12961.  
  12962. void AddTOF( struct Isrvstr *i, long (*p)(), long a );
  12963. void RemTOF( struct Isrvstr *i );
  12964. void waitbeam( long b );
  12965.  
  12966. FLOAT afp( BYTE *string );
  12967. void arnd( long place, long SPExp, BYTE *string );
  12968. FLOAT dbf( unsigned long SPExp, unsigned long mant );
  12969. LONG fpa( FLOAT fnum, BYTE *string );
  12970. void fpbcd( FLOAT fnum, BYTE *string );
  12971.  
  12972. LONG TimeDelay( long unit, unsigned long secs, unsigned long microsecs );
  12973. LONG DoTimer( struct timeval *, long unit, long command );
  12974.  
  12975.  
  12976.  
  12977. void ArgArrayDone( void );
  12978. UBYTE **ArgArrayInit( long arg1, UBYTE **arg2 );
  12979. LONG ArgInt( UBYTE **arg1, UBYTE *arg2, long arg3 );
  12980. UBYTE *ArgString( UBYTE **arg1, UBYTE *arg2, UBYTE *arg3 );
  12981. CxObj *HotKey( UBYTE *arg1, struct MsgPort *arg2, long arg3 );
  12982. struct InputEvent *InvertString( UBYTE *arg1, ULONG *arg2 );
  12983.  
  12984.  
  12985.  
  12986.  
  12987.  
  12988.  
  12989.  
  12990.  
  12991.  
  12992.  
  12993.  
  12994.  
  12995. # 7 "dinclude:clib/alib_protos.h" 3
  12996.  
  12997. # 7 "dinclude:clib/alib_protos.h" 3
  12998.  
  12999.  
  13000. # 49 "local/defs.h" 2
  13001.  
  13002. # 49 "local/defs.h" 2
  13003.  
  13004. # 1 "dinclude:clib/icon_protos.h" 3
  13005.  
  13006.  
  13007.  
  13008.  
  13009. # 1 "dinclude:amiga20/pragmas/config.h" 4
  13010.  
  13011.  
  13012.  
  13013.  
  13014.  
  13015.  
  13016.  
  13017.  
  13018. # 5 "dinclude:clib/icon_protos.h" 3
  13019.  
  13020. # 5 "dinclude:clib/icon_protos.h" 3
  13021.  
  13022. # 1 "dinclude:amiga20/exec/types.h" 4
  13023.  
  13024.  
  13025.  
  13026.  
  13027.  
  13028.  
  13029.  
  13030.  
  13031.  
  13032.  
  13033.  
  13034.  
  13035.  
  13036.  
  13037.  
  13038.  
  13039.  
  13040.  
  13041.  
  13042.  
  13043.  
  13044.  
  13045.  
  13046.  
  13047.  
  13048.  
  13049.  
  13050.  
  13051.  
  13052.  
  13053.  
  13054.  
  13055.  
  13056.  
  13057.  
  13058.  
  13059.  
  13060.  
  13061.  
  13062.  
  13063.  
  13064.  
  13065.  
  13066.  
  13067.  
  13068.  
  13069.  
  13070.  
  13071.  
  13072.  
  13073.  
  13074.  
  13075.  
  13076.  
  13077.  
  13078.  
  13079.  
  13080.  
  13081.  
  13082.  
  13083.  
  13084.  
  13085.  
  13086.  
  13087.  
  13088.  
  13089.  
  13090.  
  13091.  
  13092.  
  13093.  
  13094.  
  13095.  
  13096.  
  13097.  
  13098.  
  13099.  
  13100.  
  13101.  
  13102.  
  13103.  
  13104.  
  13105.  
  13106.  
  13107.  
  13108.  
  13109.  
  13110.  
  13111.  
  13112. # 6 "dinclude:clib/icon_protos.h" 3
  13113.  
  13114. # 6 "dinclude:clib/icon_protos.h" 3
  13115.  
  13116. # 1 "dinclude:amiga20/clib/icon_protos.h" 4
  13117.  
  13118.  
  13119.  
  13120.  
  13121.  
  13122.  
  13123.  
  13124.  
  13125.  
  13126.  
  13127.  
  13128.  
  13129.  
  13130.  
  13131.  
  13132.  
  13133.  
  13134.  
  13135.  
  13136.  
  13137.  
  13138.  
  13139. LONG GetIcon( UBYTE *name, struct DiskObject *icon,
  13140.     struct FreeList *freelist );
  13141. BOOL PutIcon( UBYTE *name, struct DiskObject *icon );
  13142. void FreeFreeList( struct FreeList *freelist );
  13143. BOOL AddFreeList( struct FreeList *freelist, APTR mem, unsigned long size );
  13144. struct DiskObject *GetDiskObject( UBYTE *name );
  13145. BOOL PutDiskObject( UBYTE *name, struct DiskObject *diskobj );
  13146. void FreeDiskObject( struct DiskObject *diskobj );
  13147. UBYTE *FindToolType( UBYTE **toolTypeArray, UBYTE *typeName );
  13148. BOOL MatchToolValue( UBYTE *typeString, UBYTE *value );
  13149. UBYTE *BumpRevision( UBYTE *newname, UBYTE *oldname );
  13150. struct DiskObject *GetDefDiskObject( long type );
  13151. BOOL PutDefDiskObject( struct DiskObject *diskObject );
  13152. struct DiskObject *GetDiskObjectNew( UBYTE *name );
  13153. BOOL DeleteDiskObject( UBYTE *name );
  13154.  
  13155.  
  13156. # 7 "dinclude:clib/icon_protos.h" 3
  13157.  
  13158. # 7 "dinclude:clib/icon_protos.h" 3
  13159.  
  13160.  
  13161.  
  13162.  
  13163.  
  13164.  
  13165.  
  13166.  
  13167. # 50 "local/defs.h" 2
  13168.  
  13169. # 50 "local/defs.h" 2
  13170.  
  13171. # 1 "dinclude:clib/wb_protos.h" 3
  13172.  
  13173.  
  13174.  
  13175.  
  13176. # 1 "dinclude:amiga20/pragmas/config.h" 4
  13177.  
  13178.  
  13179.  
  13180.  
  13181.  
  13182.  
  13183.  
  13184.  
  13185. # 5 "dinclude:clib/wb_protos.h" 3
  13186.  
  13187. # 5 "dinclude:clib/wb_protos.h" 3
  13188.  
  13189. # 1 "dinclude:amiga20/exec/types.h" 4
  13190.  
  13191.  
  13192.  
  13193.  
  13194.  
  13195.  
  13196.  
  13197.  
  13198.  
  13199.  
  13200.  
  13201.  
  13202.  
  13203.  
  13204.  
  13205.  
  13206.  
  13207.  
  13208.  
  13209.  
  13210.  
  13211.  
  13212.  
  13213.  
  13214.  
  13215.  
  13216.  
  13217.  
  13218.  
  13219.  
  13220.  
  13221.  
  13222.  
  13223.  
  13224.  
  13225.  
  13226.  
  13227.  
  13228.  
  13229.  
  13230.  
  13231.  
  13232.  
  13233.  
  13234.  
  13235.  
  13236.  
  13237.  
  13238.  
  13239.  
  13240.  
  13241.  
  13242.  
  13243.  
  13244.  
  13245.  
  13246.  
  13247.  
  13248.  
  13249.  
  13250.  
  13251.  
  13252.  
  13253.  
  13254.  
  13255.  
  13256.  
  13257.  
  13258.  
  13259.  
  13260.  
  13261.  
  13262.  
  13263.  
  13264.  
  13265.  
  13266.  
  13267.  
  13268.  
  13269.  
  13270.  
  13271.  
  13272.  
  13273.  
  13274.  
  13275.  
  13276.  
  13277.  
  13278.  
  13279. # 6 "dinclude:clib/wb_protos.h" 3
  13280.  
  13281. # 6 "dinclude:clib/wb_protos.h" 3
  13282.  
  13283. # 1 "dinclude:amiga20/clib/wb_protos.h" 4
  13284.  
  13285.  
  13286.  
  13287.  
  13288.  
  13289.  
  13290.  
  13291.  
  13292.  
  13293.  
  13294.  
  13295.  
  13296.  
  13297.  
  13298.  
  13299.  
  13300.  
  13301.  
  13302.  
  13303.  
  13304.  
  13305.  
  13306.  
  13307.  
  13308.  
  13309.  
  13310.  
  13311.  
  13312.  
  13313.  
  13314.  
  13315.  
  13316. struct AppWindow *AddAppWindowA( unsigned long id, unsigned long userdata,
  13317.     struct Window *window, struct MsgPort *msgport,
  13318.     struct TagItem *taglist );
  13319. struct AppWindow *AddAppWindow( unsigned long id, unsigned long userdata,
  13320.     struct Window *window, struct MsgPort *msgport, Tag tag1, ... );
  13321.  
  13322. BOOL RemoveAppWindow( struct AppWindow *appWindow );
  13323.  
  13324. struct AppIcon *AddAppIconA( unsigned long id, unsigned long userdata,
  13325.     UBYTE *text, struct MsgPort *msgport, struct FileLock *lock,
  13326.     struct DiskObject *diskobj, struct TagItem *taglist );
  13327. struct AppIcon *AddAppIcon( unsigned long id, unsigned long userdata,
  13328.     UBYTE *text, struct MsgPort *msgport, struct FileLock *lock,
  13329.     struct DiskObject *diskobj, Tag tag1, ... );
  13330.  
  13331. BOOL RemoveAppIcon( struct AppIcon *appIcon );
  13332.  
  13333. struct AppMenuItem *AddAppMenuItemA( unsigned long id, unsigned long userdata,
  13334.     UBYTE *text, struct MsgPort *msgport, struct TagItem *taglist );
  13335. struct AppMenuItem *AddAppMenuItem( unsigned long id, unsigned long userdata,
  13336.     UBYTE *text, struct MsgPort *msgport, Tag tag1, ... );
  13337.  
  13338. BOOL RemoveAppMenuItem( struct AppMenuItem *appMenuItem );
  13339.  
  13340.  
  13341.  
  13342.  
  13343. # 7 "dinclude:clib/wb_protos.h" 3
  13344.  
  13345. # 7 "dinclude:clib/wb_protos.h" 3
  13346.  
  13347.  
  13348.  
  13349.  
  13350.  
  13351.  
  13352.  
  13353.  
  13354. # 51 "local/defs.h" 2
  13355.  
  13356. # 51 "local/defs.h" 2
  13357.  
  13358.  
  13359.  
  13360.  
  13361.  
  13362.  
  13363. typedef struct TagItem          TAGS;
  13364.  
  13365.  
  13366. typedef BPTR                    LOCK;
  13367. typedef struct FileInfoBlock    FIB;
  13368. typedef struct Process          APROCESS;
  13369. typedef struct CommandLineInterface CLI;
  13370.  
  13371.  
  13372. typedef struct ExecBase     EBASE;
  13373. typedef struct Node             NODE;
  13374. typedef struct List             LIST;
  13375. typedef struct Library          LIBRARY;
  13376. typedef struct Message          MSG;
  13377. typedef struct MsgPort          MPORT;
  13378. typedef struct Task        TASK;
  13379.  
  13380.  
  13381. typedef struct IntuitionBase    IBASE;
  13382. typedef struct VisualInfo       VINFO;
  13383. typedef struct Gadget           GADGET;
  13384. typedef struct NewGadget        NEWGAD;
  13385. typedef struct Screen           SCREEN;
  13386. typedef struct Window           WINDOW;
  13387. typedef struct IntuiMessage     IMSG;
  13388. typedef struct StringInfo       STRINGINFO;
  13389.  
  13390.  
  13391. typedef struct GfxBase          GBASE;
  13392. typedef struct View             VIEW;
  13393. typedef struct ViewPort         VPORT;
  13394. typedef struct RastPort         RPORT;
  13395. typedef struct BitMap           BITMAP;
  13396. typedef struct RasInfo          RINFO;
  13397. typedef struct TextAttr         TATTR;
  13398. typedef struct Rectangle        RECT;
  13399. typedef struct TextFont         FONT;
  13400.  
  13401.  
  13402. typedef struct IORequest        IOREQ;
  13403. typedef struct IOStdReq         STDREQ;
  13404. typedef struct IOExtSer         SERREQ;
  13405.  
  13406.  
  13407. typedef struct WBStartup    WBMSG;
  13408.  
  13409.  
  13410. typedef struct FontRequester    FONTREQ;
  13411. typedef struct FileRequester    FILEREQ;
  13412.  
  13413.  
  13414.  
  13415. extern __far struct Custom      custom;
  13416. extern GBASE                    *GfxBase;
  13417.  
  13418.  
  13419.  
  13420.  
  13421.  
  13422.  
  13423. # 8 "defs.h" 1
  13424.  
  13425. # 8 "defs.h" 1
  13426.  
  13427.  
  13428.  
  13429.  
  13430.  
  13431.  
  13432.  
  13433.  
  13434. typedef struct DLIST {
  13435.     NODE    node;
  13436.     char    name[2];
  13437. } DLIST;
  13438.  
  13439.  
  13440.  
  13441. typedef struct SYMLIST {
  13442.     ULONG *symbolname;
  13443.     ULONG address;
  13444. } SYMLIST;
  13445.  
  13446.  
  13447.  
  13448.  
  13449. enum DTYPES {
  13450.     DTYPE_DOSBASE,
  13451.     DTYPE_PROCESS,
  13452.     DTYPE_INFO,
  13453.     DTYPE_EXECBASE,
  13454.     DTYPE_RESOURCES,
  13455.     DTYPE_INTRS,
  13456.     DTYPE_PORTS,
  13457.     DTYPE_TASKS,
  13458.     DTYPE_LIBS,
  13459.     DTYPE_DEVICES,
  13460.     DTYPE_MEMLIST,
  13461.     DTYPE_REXXLIST,
  13462.     DTYPE_SYMLIST,
  13463.     MAX_DTYPE,
  13464. };
  13465.  
  13466. typedef struct DBugDisp {
  13467.     NODE    ds_Node;
  13468.     WINDOW    *ds_Win;        
  13469.     STDREQ    ds_CReadReq;        
  13470.     STDREQ    ds_CWriteReq;        
  13471.  
  13472.     UBYTE    ds_CReadIP;        
  13473.     UBYTE    ds_CWriteIP;        
  13474.     UBYTE    ds_OpenError;
  13475.     UBYTE    ds_CsiState;        
  13476.  
  13477.     UBYTE    ds_DoneFlag;
  13478.     UBYTE    ds_DisplayOffsets;
  13479.     UBYTE    ds_PromptLen;
  13480.     UBYTE    ds_PromptStart;
  13481.  
  13482.     ULONG    ds_Flags;
  13483.  
  13484.  
  13485.     UBYTE    ds_CInChar;        
  13486.     UBYTE    ds_COutBuf[255];
  13487.     WORD    ds_COutIndex;
  13488.  
  13489.     UWORD    ds_DisplayMode;     
  13490.     UWORD    ds_PreferedMode;    
  13491.  
  13492.     UWORD    ds_ScrRows;        
  13493.     UWORD    ds_ScrCols;
  13494.  
  13495.     UWORD    ds_ScrTop;
  13496.     UWORD    ds_ScrColNo;        
  13497.  
  13498.     UWORD    ds_ScrRowNo;
  13499.  
  13500.     UBYTE    ds_RegFlag;        
  13501.     UBYTE    ds_RegTouched;        
  13502.  
  13503.     UBYTE    *ds_ScrAry;
  13504.  
  13505.     
  13506.     
  13507.     
  13508.  
  13509.     ULONG    ds_WindowTop;        
  13510.     ULONG    ds_WindowTopLine;    
  13511.     ULONG    ds_WindowBot;        
  13512.     ULONG    ds_WindowBotLine;    
  13513.  
  13514.     ULONG    ds_LastRefreshMode;    
  13515.     ULONG    ds_LastRefreshTop;    
  13516.  
  13517.     LIST    ds_List;        
  13518.     char    ds_windowTitle[128];
  13519. } DBugDisp;
  13520.  
  13521.  
  13522.  
  13523.  
  13524.  
  13525.  
  13526. typedef struct SOURCE {
  13527.     ULONG    lineNumber;            
  13528.     ULONG    address;            
  13529. } SOURCE;
  13530.  
  13531.  
  13532.  
  13533. typedef struct DEBUG    {
  13534.     struct DEBUG    *link;            
  13535.     struct SOURCE    *table;         
  13536.     struct SOURCE    *tableEnd;        
  13537.     char        sourceName[128];    
  13538.     char        *source;        
  13539.     ULONG        addrBegin;        
  13540.     ULONG        addrEnd;
  13541. } DEBUG;
  13542.  
  13543.  
  13544.  
  13545.  
  13546.  
  13547. typedef struct HUNK {
  13548.     ULONG    type;                
  13549.     ULONG    size;                
  13550.     ULONG    *memptr;             
  13551.     ULONG    *actual;             
  13552.     ULONG    hSize;                
  13553.     APTR    hunk;                
  13554.     APTR    reloc32;            
  13555.     APTR    symbols;            
  13556.     DEBUG    *debug;             
  13557. } HUNK;
  13558.  
  13559.  
  13560. typedef struct BP {
  13561.     UWORD    state;                
  13562.     UWORD    count;                
  13563.     UWORD    value;                
  13564.     UWORD    *address;            
  13565. } BP;
  13566.  
  13567.  
  13568.  
  13569.  
  13570.  
  13571.  
  13572.  
  13573.  
  13574.  
  13575. typedef struct WP {
  13576.     ULONG        type;            
  13577.     char        expression[128];    
  13578. } WP;
  13579.  
  13580.  
  13581.  
  13582.  
  13583.  
  13584.  
  13585.  
  13586.  
  13587.  
  13588.  
  13589.  
  13590.  
  13591. typedef struct DPREFS    {
  13592.     UWORD    top,left,width,height;
  13593.     UWORD DefaultMode;
  13594.     UBYTE DefaultOffset;
  13595.     alias[96];
  13596. } DPREFS;
  13597.  
  13598.  
  13599.  
  13600.  
  13601.  
  13602.  
  13603.  
  13604.  
  13605. extern IBASE            *IntuitionBase;
  13606. extern GBASE            *GfxBase;
  13607. extern EBASE            *SysBase;
  13608. extern struct DosLibrary    *DOSBase;
  13609. extern struct Library        *GadToolsBase;
  13610.  
  13611. extern char *RexxHostName;
  13612.  
  13613. extern char    *args;
  13614. extern ULONG    argSize;
  13615. extern TASK    *thisTask;
  13616. extern APROCESS *thisProcess;
  13617. extern CLI    *thisCli;
  13618.  
  13619. extern char    targetName[];
  13620. extern ULONG    *exeFile;
  13621. extern ULONG    exeSize;
  13622. extern ULONG    numHunks, firstHunk, lastHunk;
  13623. extern HUNK    *hunkArray;
  13624.  
  13625.  
  13626. extern USHORT oldrow, oldcol;
  13627.  
  13628.     
  13629.  
  13630.  
  13631.  
  13632.  
  13633.  
  13634.  
  13635.  
  13636.  
  13637.  
  13638.  
  13639.  
  13640.  
  13641.  
  13642.  
  13643.  
  13644.  
  13645.  
  13646.  
  13647.  
  13648. extern UBYTE    *programStack;
  13649. extern ULONG    programStackSize;
  13650.  
  13651. extern ULONG    programState;
  13652. extern UWORD    programSR;
  13653. extern ULONG    programPC;
  13654. extern ULONG    programD0;
  13655. extern ULONG    programD1;
  13656. extern ULONG    programD2;
  13657. extern ULONG    programD3;
  13658. extern ULONG    programD4;
  13659. extern ULONG    programD5;
  13660. extern ULONG    programD6;
  13661. extern ULONG    programD7;
  13662. extern ULONG    programA0;
  13663. extern ULONG    programA1;
  13664. extern ULONG    programA2;
  13665. extern ULONG    programA3;
  13666. extern ULONG    programA4;
  13667. extern ULONG    programA5;
  13668. extern ULONG    programA6;
  13669. extern ULONG    programA7;
  13670.  
  13671. extern ULONG    lastState;
  13672. extern UWORD    lastSR;
  13673. extern ULONG    lastPC;
  13674. extern ULONG    lastD0;
  13675. extern ULONG    lastD1;
  13676. extern ULONG    lastD2;
  13677. extern ULONG    lastD3;
  13678. extern ULONG    lastD4;
  13679. extern ULONG    lastD5;
  13680. extern ULONG    lastD6;
  13681. extern ULONG    lastD7;
  13682. extern ULONG    lastA0;
  13683. extern ULONG    lastA1;
  13684. extern ULONG    lastA2;
  13685. extern ULONG    lastA3;
  13686. extern ULONG    lastA4;
  13687. extern ULONG    lastA5;
  13688. extern ULONG    lastA6;
  13689. extern ULONG    lastA7;
  13690.  
  13691. enum DISPLAY_MODES {
  13692.     DISPLAY_DISM,
  13693.     DISPLAY_SOURCE,
  13694.     DISPLAY_MIXED,
  13695.     DISPLAY_BYTES,
  13696.     DISPLAY_WORDS,
  13697.     DISPLAY_LONGS,
  13698.     DISPLAY_HUNKS,
  13699.     DISPLAY_SYMBOL,
  13700.     DISPLAY_HELP,
  13701.     DISPLAY_BREAK,
  13702.     DISPLAY_DOSBASE,
  13703.     DISPLAY_PROCESS,
  13704.     DISPLAY_INFO,
  13705.     DISPLAY_EXECBASE,
  13706.     DISPLAY_RESOURCES,
  13707.     DISPLAY_INTRS,
  13708.     DISPLAY_PORTS,
  13709.     DISPLAY_TASKS,
  13710.     DISPLAY_LIBS,
  13711.     DISPLAY_DEVICES,
  13712.     DISPLAY_MEMLIST,
  13713.     DISPLAY_REXXLIST,
  13714.     DISPLAY_SYMLIST,
  13715.     MAX_MODES,
  13716. };
  13717.  
  13718.  
  13719.  
  13720.  
  13721.  
  13722. extern DPREFS    dprefs;
  13723.  
  13724. extern char    commandLine[];
  13725. extern UWORD    commandCol, commandEnd;
  13726.  
  13727. extern WP    wpTable[32];         
  13728.  
  13729. extern BP    bpTable[32];         
  13730. extern BP    bpTemp;             
  13731. extern WORD    topBP;                
  13732.  
  13733. extern DBugDisp *CurDisplay;            
  13734.  
  13735. extern unsigned long  ScrollStart, ScrollEnd;
  13736. extern int SymbolCount;
  13737.  
  13738.  
  13739.  
  13740. extern __stkargs UBYTE    *MallocPublic(ULONG size);
  13741. extern __stkargs UBYTE    *MallocFast(ULONG size);
  13742. extern __stkargs UBYTE    *MallocChip(ULONG size);
  13743. extern __stkargs UBYTE    *MallocAny(ULONG size, ULONG type);
  13744. extern __stkargs void    Free(APTR ptr);
  13745. extern __stkargs void    CleanMem(void);
  13746. extern __stkargs ULONG    Disassemble(ULONG src, ULONG addr, char *buf);
  13747. extern __stkargs void    EnterProgram(void);
  13748. extern __stkargs void    TargetExit(void);
  13749.  
  13750.  
  13751.  
  13752.  
  13753.  
  13754. # 2 "fails.c" 0
  13755.  
  13756. # 2 "fails.c" 0
  13757.  
  13758. # 1 "dbug_protos.h" 1
  13759.  
  13760.  
  13761.  
  13762.  
  13763.  
  13764.  
  13765.  
  13766.  
  13767.  
  13768. extern void    FreeDLIST(LIST *list);
  13769. extern BOOL    AddListNODE(LIST *list, UBYTE type, char *data);
  13770. extern BOOL    DownList(void);
  13771. extern BOOL    UpList(void);
  13772. extern BOOL    PageDownList(void);
  13773. extern BOOL    PageUpList(void);
  13774. extern WORD    RefreshList(WORD maxLines, BOOL fullRefresh, LONG top);
  13775. extern BOOL    SprintfDLIST(LIST *list, UBYTE type, char *fmt, ...);
  13776. extern void    ListDosBase(DBugDisp *dp);
  13777. extern void    ListProcess(DBugDisp *dp);
  13778. extern void    ListInfo(DBugDisp *dp);
  13779. extern void    ListExecBase(DBugDisp *dp);
  13780. extern void    BuildDLIST(LIST *dst, LIST *src, ULONG type);
  13781. extern void    ListResources(DBugDisp *dp);
  13782. extern void    ListIntrs(DBugDisp *dp);
  13783. extern void    ListPorts(DBugDisp *dp);
  13784. extern void    ListTasks(DBugDisp *dp);
  13785. extern void    ListLibs(DBugDisp *dp);
  13786. extern void    ListDevices(DBugDisp *dp);
  13787. extern void    ListMemList(DBugDisp *dp);
  13788. extern int     SizeDLIST(LIST *list);
  13789. extern BOOL    ListSymbols(DBugDisp *dp);
  13790.  
  13791.  
  13792.  
  13793. extern void        Newline(void);
  13794. extern void        PrintAddress(ULONG addr);
  13795. extern void        OffsetAddressBuf(ULONG addr, char *buf);
  13796. extern void        InitCommand(void);
  13797. extern void        InitModes(void);
  13798. extern void        RefreshCommand(int fullRefresh);
  13799. extern void        RefreshPrompt(BOOL fullRefresh);
  13800. extern void        RefreshWindow(int fullRefresh);
  13801. extern void        RefreshAllWindows(int fullRefresh);
  13802. extern void        SetDisplayMode(WORD, BOOL);
  13803. extern void        ReadPrefs(void);
  13804. extern void        WritePrefs(void);
  13805. extern void        abort(void);
  13806. extern BOOL        ParseArgToken(char *buf);
  13807. extern ULONG     OnOffToggle(char *arg, ULONG val, ULONG mask);
  13808. extern int        main(int ac, char *av[]);
  13809. extern LONG        CalcDisplayLines(void);
  13810. extern void        SetModeSave(WORD mode);
  13811. extern ULONG        ValidMemCheck(ULONG address);
  13812. extern __stkargs void kprintf(unsigned char *arg, ...);
  13813. extern UBYTE     LineBuf[128];
  13814. extern UBYTE     DirBuf[128];
  13815. extern WORD        ForceFullRefresh;
  13816. extern UBYTE     RexxReplyString[256];
  13817. extern UBYTE     DefaultPubName[128];
  13818. extern char        lastCommand[128];
  13819. extern int        RStepFlag;
  13820. extern char        rexxhostname[16];
  13821.  
  13822.  
  13823.  
  13824. extern long        ParseExp(char *, short *, long);
  13825. extern void        PushOp(short, short, short);
  13826. extern int        TopOfOpStack(void);
  13827. extern int        SecondOffOpStack(void);
  13828. extern void        PushAtom(long, short);
  13829.  
  13830.  
  13831.  
  13832. extern void        RefreshFKeys(BOOL fullRefresh);
  13833. extern BOOL        FunctionKey(UWORD num);
  13834. extern BOOL        HelpKey(void);
  13835. extern BOOL         CmdFKey(char *args);
  13836. extern BOOL        CmdRexx(char *args);
  13837. extern BOOL        CmdSavePrefs(char *args);
  13838. extern BOOL        CmdInfo(char *args);
  13839. extern BOOL        CmdExecBase(char *args);
  13840. extern BOOL        CmdResources(char *args);
  13841. extern BOOL        CmdIntrs(char *args);
  13842. extern BOOL        CmdPorts(char *args);
  13843. extern BOOL        CmdSymList(char *args);
  13844. extern BOOL        CmdTasks(char *args);
  13845. extern BOOL        CmdLibs(char *args);
  13846. extern BOOL        CmdDevices(char *args);
  13847. extern BOOL        CmdMemList(char *args);
  13848. extern BOOL        CmdDoBsBase(char *args);
  13849. extern BOOL        CmdProcess(char *args);
  13850. extern BOOL        CmdOffsets(char *args);
  13851. extern BOOL        CmdDown(char *args);
  13852. extern BOOL        CmdUp(char *args);
  13853. extern BOOL        CmdPageDown(char *args);
  13854. extern BOOL        CmdPageUp(char *args);
  13855. extern BOOL        CmdSource(char *args);
  13856. extern BOOL        CmdDism(char *args);
  13857. extern BOOL        CmdMixed(char *args);
  13858. extern BOOL        CmdBytes(char *args);
  13859. extern BOOL        CmdWords(char *args);
  13860. extern BOOL        CmdLongs(char *args);
  13861. extern BOOL        CmdBreakpoint(char *args);
  13862. extern BOOL        CmdBP(char *args);
  13863. extern BOOL        CmdClear(char *args);
  13864. extern BOOL        CmdHunks(char *args);
  13865. extern BOOL        CmdSymbol(char *args);
  13866. extern BOOL        CmdSet(char *args);
  13867. extern BOOL        RStepTarget(void);
  13868. extern BOOL        StepTarget(void);
  13869. extern BOOL        StepTargetRange(ULONG addressLow, ULONG addressHi);
  13870. extern BOOL        RStepTargetRange(ULONG addressLow, ULONG addressHi);
  13871. extern BOOL        CmdStep(char *args);
  13872. extern BOOL        CmdRStep(char *args);
  13873. extern BOOL        OverTarget(void);
  13874. extern BOOL        OverTargetRange(ULONG addressLow, ULONG addressHi);
  13875. extern BOOL        CmdOver(char *args);
  13876. extern BOOL        CmdReset(char *args);
  13877. extern BOOL        GoTarget(void);
  13878. extern BOOL        CmdGo(char *args);
  13879. extern BOOL        CmdEval(char *args);
  13880. extern BOOL        CmdOpen(char *args);
  13881. extern BOOL        CmdClose(char *args);
  13882. extern BOOL        CmdQuit(char *args);
  13883. extern BOOL        CmdHelp(char *args) ;
  13884. extern BOOL        CmdWatchBytes(char *args);
  13885. extern BOOL        CmdWatchWords(char *args);
  13886. extern BOOL        CmdWatchLongs(char *args);
  13887. extern BOOL        CmdWatchClear(char *args);
  13888. extern BOOL        CmdRefresh(char *args);
  13889. extern BOOL        CmdDosBase(char *args);
  13890. extern WORD        RefreshHelp(WORD maxLines, BOOL fullRefresh, LONG);
  13891. extern BOOL        DownHelp(void);
  13892. extern BOOL        UpHelp(void);
  13893. extern int        HelpSize(void);
  13894. extern char        *SkipBlanks(char *s);
  13895. extern BOOL        DoCommand(char *command);
  13896. extern BOOL        CmdAlias(char *args);
  13897. extern BOOL        CmdUnAlias(char *args);
  13898. extern BOOL        CmdRegs(char *args);
  13899. extern BOOL        CmdJump(char *args);
  13900. extern BOOL         CmdBar(char *args);
  13901. extern BOOL         CmdEnd(char *args);
  13902. extern BOOL         CmdItem(char *args);
  13903. extern BOOL         CmdTitle(char *args);
  13904. extern BOOL         CmdMenus(char *args);
  13905. extern BOOL         CmdSubItem(char *args);
  13906. extern BOOL         CmdChangeWindow(char *args);
  13907. extern BOOL         CmdAgain(char *args);
  13908. extern void         init_function_keys(void);
  13909. extern char    fkeys[10][16];
  13910. extern void kprintline(char *string);
  13911. extern void kprintlen(char *string, int len);
  13912.  
  13913.  
  13914.  
  13915. extern WORD        RefreshHunks(WORD maxLines, BOOL fullRefresh, LONG index);
  13916. extern WORD        RefreshSymbols(WORD maxLines, BOOL fullRefresh, LONG index);
  13917. extern LONG        SymbolIndexOfAddr(ULONG val);
  13918. extern BOOL        DownHunks(void);
  13919. extern BOOL        UpHunks(void);
  13920. extern BOOL        DownSymbol(void);
  13921. extern BOOL        PageDownSymbol(void);
  13922. extern BOOL        UpSymbol(void);
  13923. extern BOOL        PageUpSymbol(void);
  13924. extern BOOL        DBugLoadSeg(char *filename);
  13925. extern void        AllocateStack(void);
  13926. extern void        ResetTarget(void);
  13927. extern DEBUG     *FindDebug(ULONG address);
  13928. extern DEBUG     *FindNearestDebug(ULONG address);
  13929. extern SOURCE    *FindSource(DEBUG *debug, ULONG address);
  13930. extern char        *FindSourceLine(DEBUG *debug, SOURCE *source);
  13931. extern __stkargs char *LookupValue(ULONG value);
  13932. extern ULONG     *NearestSymbol(ULONG value);
  13933. extern char        *NearestValue(ULONG value);
  13934. extern BOOL        LookupSymbol(char *symbol, ULONG *value);
  13935. extern BOOL        LookupSymLen(char *symbol, UWORD len, ULONG *value);
  13936. extern int        CountSymbols(void);
  13937. extern void        CopySymbols(SYMLIST *symlist);
  13938. extern char        *addscore(char *string);
  13939. extern char        *addat(char *string);
  13940.  
  13941.  
  13942.  
  13943. extern WORD        RefreshBreakpoints(WORD maxLines, BOOL fullRefresh);
  13944. extern BOOL        UpBreak(void);
  13945. extern BOOL        DownBreak(void);
  13946. extern void        InitBreakpoints(void);
  13947. extern void        InstallBreakpoints(void);
  13948. extern void        CheckBreakpoints(void);
  13949. extern BOOL        IsBreakpoint(ULONG address);
  13950. extern BOOL        SetBreakpoint(ULONG address, UWORD count, UWORD type);
  13951. extern BOOL        ClearBreakpoint(ULONG address);
  13952. extern void        SetTempBreakpoint(ULONG address);
  13953. extern void        SetAllBreakpoints(void);
  13954. extern WORD topBP;
  13955.  
  13956.  
  13957.  
  13958. extern WORD        RefreshBytes(WORD maxLines, BOOL fullRefresh, ULONG addr);
  13959. extern WORD        RefreshWords(WORD maxLines, BOOL fullRefresh, ULONG addr);
  13960. extern WORD        RefreshLongs(WORD maxLines, BOOL fullRefresh, ULONG addr);
  13961. extern BOOL        UpBytes(void);
  13962. extern BOOL        UpWords(void);
  13963. extern BOOL        UpLongs(void);
  13964. extern BOOL        PageUpHex(void);
  13965. extern BOOL        DownBytes(void);
  13966. extern BOOL        DownWords(void);
  13967. extern BOOL        DownLongs(void);
  13968. extern BOOL        PageDownHex(void);
  13969.  
  13970.  
  13971.  
  13972. extern BOOL        DownMixed(void);
  13973. extern BOOL        UpMixed(void);
  13974. extern BOOL        PageDownMixed(void);
  13975. extern BOOL        PageUpMixed(void);
  13976. extern BOOL        DownSource(void);
  13977. extern BOOL        UpSource(void);
  13978. extern BOOL        PageDownSource(void);
  13979. extern BOOL        PageUpSource(void);
  13980. extern WORD        RefreshMixed(WORD maxLines, BOOL fullRefresh, ULONG, ULONG, WORD);
  13981. extern WORD        PrevMixedLine(ULONG *addr, ULONG *line, LONG *info);
  13982. extern WORD        NextMixedLine(ULONG *addr, ULONG *line, LONG *info);
  13983. extern WORD        CurrentMixedLine(ULONG *addr, ULONG *line, LONG *info);
  13984.  
  13985.  
  13986.  
  13987. extern BOOL        DownDism(void);
  13988. extern BOOL        UpDism(void);
  13989. extern BOOL        PageDownDism(void);
  13990. extern BOOL        PageUpDism(void);
  13991. extern WORD        RefreshDism(short maxLines, BOOL fullRefresh);
  13992. extern ULONG     PreviousInstruction(ULONG addr);
  13993.  
  13994.  
  13995.  
  13996. extern char        *StateText(ULONG staten);
  13997. extern WORD        RefreshRegisters(WORD maxLines, BOOL fullRefresh);
  13998. extern long        *RegisterAddress(char *name);
  13999.  
  14000.  
  14001.  
  14002. extern WORD        RefreshWatchpoints(WORD maxLines, BOOL fullRefresh);
  14003. extern void        InitWatchpoints(void);
  14004. extern BOOL        IsWatchpoint(char *expression);
  14005. extern BOOL        SetWatchpoint(char *expression, ULONG type);
  14006. extern BOOL        ClearWatchpoint(char *expression);
  14007. extern BOOL         ShowWatchTitle(BOOL fullRefresh, WORD *count, WORD *maxLines);
  14008.  
  14009.  
  14010.  
  14011. extern BOOL     enable_menus(void);
  14012. extern void     init_default_menus(void);
  14013. extern void     free_menus(void);
  14014. extern void     set_menu_item(int num, int type, unsigned char *str, unsigned char *cmd, unsigned char *comkey);
  14015. extern void     do_scroller(void);
  14016. extern UWORD FindScrollerTop(UWORD total, UWORD displayable, UWORD pot);
  14017. extern int     FindScrollerValues(UWORD total, UWORD displayable, UWORD top, WORD overlap, UWORD *body, UWORD *pot);
  14018. extern void     setscrollbar(int flag);
  14019. extern void     ActivateArrows(struct Window *win);
  14020. extern void     InActivateArrows(struct Window *win);
  14021. extern BOOL     ProcessMenuItem(char *args,int type);
  14022. extern int    FindSlot(char *args);
  14023. extern struct Menu *v_create_menus(struct NewMenu *menulist);
  14024. extern int v_layout_menus(struct Menu *menus);
  14025. extern void v_free_menus(struct Menu *menus);
  14026. extern int text_width(char *str);
  14027.  
  14028.  
  14029.  
  14030. extern BOOL        RXGetPC(char *args);
  14031. extern BOOL        RXGetLine(char *args);
  14032. extern BOOL        RXGetInfo(char *args);
  14033. extern BOOL        RXGetDismLine(char *args);
  14034. extern BOOL         RXGetEval(char *args);
  14035. extern BOOL         RXGetBytes(char *args);
  14036. extern BOOL        RXGetWords(char *args);
  14037. extern BOOL        RXGetLongs(char *args);
  14038. extern BOOL        RXGetCommand(char *args);
  14039. extern BOOL        RXStartList(char *args);
  14040. extern BOOL        RXEndList(char *args);
  14041. extern BOOL        RXPutList(char *args);
  14042.  
  14043.  
  14044.  
  14045. extern void        InitConsole(void);
  14046. extern LONG        ScrMainBodyRange(void *ptop, void *pbot);
  14047. extern LONG        ScrColumns(WORD overhead, WORD itemWidth, WORD limit);
  14048. extern void        ScrFlush(void);
  14049. extern void        ScrPutNewline(void);
  14050. extern void        ScrPutChar(UBYTE c);
  14051. extern void        ScrWrite(char *s, ULONG len);
  14052. extern void        ScrPuts(char *s);
  14053. extern void        ScrPutsCtl(char *s);
  14054. extern WORD        ScrPrintf(const char *fmt, ...);
  14055. extern void        ScrStatus(const char *fmt, ...);
  14056. extern void        ScrHome(void);
  14057. extern void        ScrCursoff(void);
  14058. extern void        ScrCurson(void);
  14059. extern void        ScrClr(void);
  14060. extern void        ScrRowCol(UWORD row, UWORD col);
  14061. extern void        ScrEOL(void);
  14062. extern void        ScrHighlight(void);
  14063. extern void        ScrDull(void);
  14064. extern void        ScrPlain(void);
  14065. extern void        ScrInverse(void);
  14066. extern void        ScrItalics(void);
  14067. extern void        ScrUnderline(void);
  14068. extern void        ScrScrollup(void);
  14069. extern void        ScrScrolldown(void);
  14070. extern DBugDisp     *ScrOpen(BOOL first, BOOL refresh, char *pubname);
  14071. extern void        ScrScrollClr(void);
  14072. extern void        GetWindowSize(void);
  14073. extern void        EnterDebugger(void);
  14074. extern void        CloseDisplay(struct DBugDisp *);
  14075. extern void        RequestCloseDisplay(struct DBugDisp *, int );
  14076. extern BOOL        CheckCloseDisplay(void);
  14077. extern void        ProcessDataAtCoord(DBugDisp *disp, WORD x, WORD y);
  14078. extern void         SetTitle(char *title, DBugDisp *disp);
  14079. extern void         draw_fkey_boxes(void);
  14080. extern void        drawdoublebox(void);
  14081. extern struct DBugDisp  *CurDisplay;
  14082. extern LIST    DisplayList;
  14083.  
  14084. # 3 "fails.c" 0
  14085.  
  14086. # 3 "fails.c" 0
  14087.  
  14088. # 1 "dinclude:ctype.h" 1
  14089.  
  14090.  
  14091.  
  14092.  
  14093.  
  14094.  
  14095.  
  14096.  
  14097.  
  14098.  
  14099.  
  14100.  
  14101.  
  14102.  
  14103.  
  14104.  
  14105. extern  const unsigned char __CArya[257];
  14106. extern  const unsigned char __CAryb[257];
  14107. extern  const unsigned char __CUToL[257];
  14108. extern  const unsigned char __CLToU[257];
  14109.  
  14110.  
  14111.  
  14112.  
  14113.  
  14114.  
  14115.  
  14116.  
  14117.  
  14118.  
  14119.  
  14120.  
  14121.  
  14122.  
  14123.  
  14124.  
  14125. extern int isalnum(int);
  14126. extern int isalpha(int);
  14127. extern int iscntrl(int);
  14128. extern int isdigit(int);
  14129. extern int isgraph(int);
  14130. extern int islower(int);
  14131. extern int isspace(int);
  14132. extern int isupper(int);
  14133.  
  14134. extern int ispunct(int);
  14135. extern int isxdigit(int);
  14136. extern int isprint(int);
  14137.  
  14138. extern int tolower(int);
  14139. extern int toupper(int);
  14140.  
  14141.  
  14142.  
  14143.  
  14144.  
  14145.  
  14146.  
  14147.  
  14148.  
  14149.  
  14150.  
  14151.  
  14152.  
  14153.  
  14154.  
  14155.  
  14156.  
  14157.  
  14158.  
  14159.  
  14160. # 4 "fails.c" 0
  14161.  
  14162. # 4 "fails.c" 0
  14163.  
  14164. # 1 "dd_rev.h" 1
  14165.  
  14166.  
  14167.  
  14168.  
  14169.  
  14170.  
  14171.  
  14172. # 5 "fails.c" 0
  14173.  
  14174. # 5 "fails.c" 0
  14175.  
  14176.  
  14177.  
  14178.  
  14179. extern void        InitConsole(void);
  14180. extern LONG        ScrMainBodyRange(void *ptop, void *pbot);
  14181. extern LONG        ScrColumns(WORD overhead, WORD itemWidth, WORD limit);
  14182. extern void        ScrFlush(void);
  14183. extern void        ScrPutNewline(void);
  14184. extern void        ScrPutChar(UBYTE c);
  14185. extern void        ScrWrite(char *s, ULONG len);
  14186. extern void        ScrPuts(char *s);
  14187. extern void        ScrPutsCtl(char *s);
  14188. static unsigned int    _swrite(char *buf, size_t n1, size_t n2, const char **sst);
  14189. extern WORD        ScrPrintf(const char *fmt, ...);
  14190. extern void        ScrStatus(const char *fmt, ...);
  14191. static void        QueueRead(void);
  14192. static void        HandleConsoleInput(struct DBugDisp *disp, WORD c);
  14193. extern void        ScrHome(void);
  14194. extern void        ScrCursoff(void);
  14195. extern void        ScrCurson(void);
  14196. extern void        ScrClr(void);
  14197. extern void        ScrRowCol(UWORD row, UWORD col);
  14198. extern void        ScrEOL(void);
  14199. extern void        ScrHighlight(void);
  14200. extern void        ScrDull(void);
  14201. extern void        ScrPlain(void);
  14202. extern void        ScrInverse(void);
  14203. extern void        ScrItalics(void);
  14204. extern void        ScrUnderline(void);
  14205. extern void        ScrScrollup(void);
  14206. extern void        ScrScrolldown(void);
  14207. __autoexit static void    ScrClose(void);
  14208. extern DBugDisp     *ScrOpen(BOOL first, BOOL refresh, char *pubname);
  14209. extern void        ScrScrollClr(void);
  14210. extern void        GetWindowSize(void);
  14211. extern void        EnterDebugger(void);
  14212.  
  14213. extern void        CloseDisplay(struct DBugDisp *);
  14214. extern void        RequestCloseDisplay(struct DBugDisp *, int );
  14215. extern BOOL        CheckCloseDisplay(void);
  14216. extern void        ProcessDataAtCoord(DBugDisp *disp, WORD x, WORD y);
  14217. extern void         SetTitle(char *title, DBugDisp *disp);
  14218.  
  14219. extern void         draw_fkey_boxes(void);
  14220. extern void        drawdoublebox(void);
  14221. static       void         drawbox(int xcol,int yrow, int xlen, int ylen);
  14222. static     void        do_putc(DBugDisp *disp, UBYTE c);
  14223.  
  14224.  
  14225.  
  14226. extern struct DBugDisp  *CurDisplay;
  14227. extern LIST    DisplayList;
  14228.  
  14229.  
  14230.  
  14231.  
  14232.  
  14233.  
  14234.  
  14235. extern struct Menu      *DebugMenu;
  14236.  
  14237. extern struct Gadget ColorGadget;
  14238. extern struct Gadget DownGadget;
  14239. extern struct Gadget UpGadget;
  14240. extern struct Image ColorPropImage;
  14241. extern struct PropInfo ColorPropInfo;
  14242.  
  14243. DBugDisp    *CurDisplay;    
  14244. LIST        DisplayList;    
  14245. MPORT        DBugPort;        
  14246. WORD        CheckClose;
  14247. char        ValidClipChar[256];
  14248. static int  count = 0;
  14249.  
  14250.  
  14251.  
  14252. static int  PageFlag = 0;
  14253. static int  Ticked = 0;
  14254.  
  14255. USHORT    oldrow = 0xFFFF;     
  14256. USHORT  oldcol = 0xFFFF;
  14257.  
  14258. static ULONG seconds=0;
  14259. static ULONG micros=0;
  14260.  
  14261.  
  14262.  
  14263. void    InitConsole(void) {
  14264.  
  14265.     WORD i;
  14266.  
  14267.  
  14268.     NewList(&DisplayList);
  14269.  
  14270.     DBugPort.mp_Flags  = 0;
  14271.     DBugPort.mp_SigBit = 4;
  14272.     DBugPort.mp_SigTask = FindTask(0L);
  14273.     NewList(&DBugPort.mp_MsgList);
  14274.  
  14275.     SetSignal(0L,(1L<<4));
  14276.  
  14277.     for (i = '0'; i <= '9'; ++i)ValidClipChar[i] = 1;
  14278.     for (i = 'a'; i <= 'z'; ++i)ValidClipChar[i] = 1;
  14279.     for (i = 'A'; i <= 'Z'; ++i)ValidClipChar[i] = 1;
  14280.     ValidClipChar['+'] = 1;
  14281.     ValidClipChar['_'] = 1;
  14282.     ValidClipChar['@'] = 1;
  14283.     ValidClipChar['$'] = 1;
  14284.     ValidClipChar['.'] = 1;
  14285.  
  14286.     ValidClipChar['-'] = 1;
  14287. }
  14288.  
  14289.  
  14290.  
  14291.  
  14292.  
  14293. void    ScrFlush(void) {
  14294.     DBugDisp *disp;
  14295.  
  14296.     if ((disp = CurDisplay) && disp->ds_COutIndex) {
  14297.         disp->ds_CWriteReq.io_Command = 3;
  14298.         disp->ds_CWriteReq.io_Data = (APTR)disp->ds_COutBuf;
  14299.         disp->ds_CWriteReq.io_Length = disp->ds_COutIndex;
  14300.         DoIO((IOREQ *)&disp->ds_CWriteReq);
  14301.         disp->ds_COutIndex = 0;
  14302.     }
  14303. }
  14304.  
  14305. void    ScrPutChar(UBYTE c) {
  14306.     DBugDisp *disp;
  14307.  
  14308.     if (disp = CurDisplay) {
  14309.         disp->ds_COutBuf[disp->ds_COutIndex++] = c;
  14310.         if (disp->ds_COutIndex == sizeof(disp->ds_COutBuf))ScrFlush();
  14311.         if (c == '\t') {
  14312.             int i = 8 - (disp->ds_ScrColNo & 7);
  14313.             while(i--)do_putc(disp,' ');
  14314.         }
  14315.         else do_putc(disp,c);
  14316.     }
  14317. }
  14318.  
  14319. void do_putc(DBugDisp *disp,UBYTE c)
  14320. {
  14321.     if (disp->ds_ScrColNo < disp->ds_ScrCols && disp->ds_ScrRowNo < disp->ds_ScrRows && disp->ds_ScrAry)
  14322.         disp->ds_ScrAry[disp->ds_ScrColNo++ + disp->ds_ScrCols * disp->ds_ScrRowNo] = c;
  14323. }
  14324.  
  14325.  
  14326. void    ScrPutCharCtl(UBYTE c) {
  14327.     DBugDisp *disp;
  14328.  
  14329.     if (disp = CurDisplay) {
  14330.         disp->ds_COutBuf[disp->ds_COutIndex++] = c;
  14331.         if (disp->ds_COutIndex == sizeof(disp->ds_COutBuf))
  14332.             ScrFlush();
  14333.     }
  14334. }
  14335.  
  14336.  
  14337. void    ScrWrite(char *s, ULONG len) {
  14338.  
  14339.     while (len > 0) {
  14340.         ScrPutChar(*s++);
  14341.         --len;
  14342.     }
  14343. }
  14344.  
  14345. void    ScrPuts(char *s) {
  14346.  
  14347.     while (*s)ScrPutChar(*s++);
  14348. }
  14349.  
  14350. void    ScrPutsCtl(char *s) {
  14351.  
  14352.     while (*s)ScrPutCharCtl(*s++);
  14353.  
  14354. }
  14355.  
  14356.  
  14357.  
  14358. static unsigned int _swrite(char *buf, size_t n1, size_t n2, const char **sst) {
  14359.     size_t n;
  14360.  
  14361.     if (n1 == 1)
  14362.         n = n2;
  14363.     else if (n2 == 1)
  14364.         n = n1;
  14365.         else
  14366.         n = n1 * n2;
  14367.  
  14368.     _slow_bcopy(buf, *sst, n);
  14369.     *sst += n;
  14370.     return(n2);
  14371. }
  14372.  
  14373. WORD    ScrPrintf(const char *fmt, ...) {
  14374.     char        buf[128];
  14375.     char        *ptr = &buf[0];
  14376.     va_list     va;
  14377.     WORD        n;
  14378.  
  14379.     (va = (void*)((char *)&fmt + sizeof(fmt)));
  14380.     n = (WORD)_pfmt(fmt, va, _swrite, &ptr);
  14381.     *ptr = 0;
  14382.     ScrPuts(buf);
  14383.  
  14384.     ;
  14385.     n = strlen(buf);
  14386.     return n;
  14387. }
  14388.  
  14389. void    ScrStatus(const char *fmt, ...) {
  14390.     static char    buf[128];
  14391.     char        *ptr = &buf[0];
  14392.     va_list     va;
  14393.  
  14394.     ScrPlain();
  14395.     ScrDull();
  14396.  
  14397.     (va = (void*)((char *)&fmt + sizeof(fmt)));
  14398.     _pfmt(fmt, va, _swrite, &ptr);
  14399.     *ptr = 0;
  14400.  
  14401.     ScrRowCol(CurDisplay->ds_ScrRows-2, 1);
  14402.  
  14403.     ScrPuts(" < Status: ");
  14404.  
  14405.     ScrInverse();
  14406.     ScrPuts(buf);
  14407.     ScrPlain();
  14408.     ScrDull();
  14409.  
  14410.     ScrPuts(" > ");
  14411.  
  14412.  
  14413.     CurDisplay->ds_PromptStart = strlen(buf)+14;
  14414.     RefreshPrompt(1);
  14415.     strcpy(RexxReplyString,buf);    
  14416.     ;
  14417. }
  14418.  
  14419.  
  14420.  
  14421. static void    QueueRead(void) {
  14422.     DBugDisp *disp;
  14423.  
  14424.     if (disp = CurDisplay) {
  14425.         if (disp->ds_CReadIP == 0) {
  14426.             disp->ds_CReadReq.io_Command = 2;
  14427.             disp->ds_CReadReq.io_Data = (APTR)&disp->ds_CInChar;
  14428.             disp->ds_CReadReq.io_Length = 1;
  14429.             SendIO((IOREQ *)&disp->ds_CReadReq);
  14430.             disp->ds_CReadIP = 1;
  14431.         }
  14432.     }
  14433. }
  14434.  
  14435.  
  14436.  
  14437.  
  14438. void    ScrPutNewline(void) {
  14439.     DBugDisp *disp;
  14440.  
  14441.     ScrPutCharCtl('\n');
  14442.  
  14443.     if (disp = CurDisplay) {
  14444.         disp->ds_ScrColNo = 0;
  14445.         ++disp->ds_ScrRowNo;
  14446.     }
  14447. }
  14448.  
  14449. void    ScrHome(void) {
  14450.     DBugDisp *disp;
  14451.  
  14452.     ScrPutsCtl("\x9b0;0\x48");
  14453.     if (disp = CurDisplay) {
  14454.         disp->ds_ScrColNo = 0;
  14455.         disp->ds_ScrRowNo = 0;
  14456.     }
  14457. }
  14458.  
  14459. void    ScrCursoff(void) {
  14460.     ScrPutsCtl("\x9b0 \x70");
  14461. }
  14462.  
  14463. void    ScrCurson(void) {
  14464.     ScrPutsCtl("\x9b \x70");
  14465.     ScrFlush();
  14466. }
  14467.  
  14468. void    ScrClr(void) {
  14469.     DBugDisp *disp;
  14470.  
  14471.     ScrPutCharCtl(12);
  14472.     if (disp = CurDisplay) {
  14473.         disp->ds_ScrColNo = 0;
  14474.         disp->ds_ScrRowNo = 0;
  14475.         if (disp->ds_ScrAry)
  14476.             clrmem(disp->ds_ScrAry, disp->ds_ScrRows * disp->ds_ScrCols);
  14477.     }
  14478. }
  14479.  
  14480. void    ScrRowCol(UWORD row, UWORD col) {
  14481.     DBugDisp *disp;
  14482.     char buf[32];
  14483.  
  14484.     sprintf(buf, "\x9b%d;%d\x48", row, col);
  14485.     ScrPutsCtl(buf);
  14486.  
  14487.     if (disp = CurDisplay) {
  14488.         disp->ds_ScrColNo = col - 1;
  14489.         disp->ds_ScrRowNo = row - 1;
  14490.     }
  14491. }
  14492.  
  14493.  
  14494. void    ScrEOL(void) {
  14495.     DBugDisp *disp;
  14496.  
  14497.     ScrPutsCtl("\x9b\x4b");
  14498.     if ((disp = CurDisplay) && disp->ds_ScrAry) {
  14499.         if (disp->ds_ScrRowNo < disp->ds_ScrRows && disp->ds_ScrColNo < disp->ds_ScrCols)
  14500.             clrmem(disp->ds_ScrAry + disp->ds_ScrRowNo * disp->ds_ScrCols + disp->ds_ScrColNo, disp->ds_ScrCols - disp->ds_ScrColNo);
  14501.     }
  14502. }
  14503.  
  14504. void    ScrHighlight(void) {
  14505.     if (IntuitionBase->ActiveScreen->BitMap.Depth == 1)
  14506.         ScrPutsCtl("\x9b7\x6d");
  14507.     else ScrPutsCtl("\x9b32\x6d");
  14508. }
  14509.  
  14510. void    ScrDull(void) {
  14511.     if (IntuitionBase->ActiveScreen->BitMap.Depth == 1)
  14512.         ScrPutsCtl("\x9b3\x6d");
  14513.     else    ScrPutsCtl("\x9b33\x6d");
  14514. }
  14515.  
  14516. void    ScrPlain(void) {
  14517.     ScrPutsCtl("\x9b0\x6d");
  14518. }
  14519.  
  14520. void    ScrInverse(void) {
  14521.     ScrPutsCtl("\x9b7\x6d");
  14522. }
  14523.  
  14524. void    ScrItalics(void) {
  14525.     ScrPutsCtl("\x9b3\x6d");
  14526. }
  14527.  
  14528. void    ScrUnderline(void) {
  14529.     ScrPutsCtl("\x9b4\x6d");
  14530. }
  14531.  
  14532.  
  14533.  
  14534.  
  14535. void    ScrScrollup(void) {
  14536.     DBugDisp *disp;
  14537.     WINDOW     *win;
  14538.  
  14539.     if ((disp = CurDisplay) && (win = disp->ds_Win)) {
  14540.         RPORT     *rp = win->RPort;
  14541.         UWORD    top = win->BorderTop + disp->ds_ScrTop * rp->TxHeight;
  14542.         UWORD    bottom = top + ScrMainBodyRange(0L, 0L) * rp->TxHeight;
  14543.         ULONG    topln;
  14544.         ULONG    botln;
  14545.  
  14546.         ScrollRaster(rp, 0, rp->TxHeight, win->BorderLeft, top, CurDisplay->ds_ScrCols * rp->TxWidth + 3, bottom - 1);
  14547.         ScrMainBodyRange(&topln, &botln);
  14548.         --topln;
  14549.         if (disp->ds_ScrAry && botln < disp->ds_ScrRows) {
  14550.             
  14551.             movmem(disp->ds_ScrAry + (UWORD)(topln + 1) * disp->ds_ScrCols,
  14552.                 disp->ds_ScrAry + (UWORD)topln * disp->ds_ScrCols,
  14553.                 (UWORD)(botln - topln - 1) * disp->ds_ScrCols
  14554.             );
  14555.             clrmem(disp->ds_ScrAry + (UWORD)(botln - 1) * disp->ds_ScrCols, disp->ds_ScrCols);
  14556.         }
  14557.         ScrRowCol(botln, 1);
  14558.     }
  14559. }
  14560.  
  14561.  
  14562.  
  14563. void    ScrScrolldown(void) {
  14564.     DBugDisp *disp;
  14565.     WINDOW     *win;
  14566.  
  14567.     if ((disp = CurDisplay) && (win = disp->ds_Win)) {
  14568.         RPORT     *rp = win->RPort;
  14569.         UWORD    top = win->BorderTop + disp->ds_ScrTop * rp->TxHeight;
  14570.         UWORD    bottom = top + ScrMainBodyRange(0L,0L) * rp->TxHeight;
  14571.         ULONG    topln;
  14572.         ULONG    botln;
  14573.  
  14574.         ScrollRaster(rp, 0, -rp->TxHeight, win->BorderLeft, top, CurDisplay->ds_ScrCols * rp->TxWidth + 3, bottom - 1);
  14575.         ScrMainBodyRange(&topln, &botln);
  14576.         ScrRowCol(topln, 1);
  14577.         --topln;
  14578.         if (disp->ds_ScrAry && botln < disp->ds_ScrRows) {
  14579.             movmem(disp->ds_ScrAry + (UWORD)topln * disp->ds_ScrCols,
  14580.                 disp->ds_ScrAry + (UWORD)(topln + 1) * disp->ds_ScrCols,
  14581.                 (UWORD)(botln - topln - 1) * disp->ds_ScrCols
  14582.             );
  14583.             clrmem(disp->ds_ScrAry + (UWORD)topln * disp->ds_ScrCols, disp->ds_ScrCols);
  14584.         }
  14585.  
  14586.     }
  14587. }
  14588.  
  14589.  
  14590.  
  14591. void    ScrScrollClr(void) {
  14592.     DBugDisp *disp;
  14593.     WINDOW     *win;
  14594.  
  14595.     if ((disp = CurDisplay) && (win = disp->ds_Win)) {
  14596.         RPORT     *rp = win->RPort;
  14597.         UWORD    top = win->BorderTop + disp->ds_ScrTop * rp->TxHeight;
  14598.         UWORD    bottom = top + ScrMainBodyRange(0L, 0L) * rp->TxHeight;
  14599.         ULONG    topln;
  14600.         ULONG    botln;
  14601.  
  14602.         SetAPen(rp,0);
  14603.         RectFill(rp, win->BorderLeft, top, CurDisplay->ds_ScrCols * rp->TxWidth + 3, bottom - 1);
  14604.         ScrMainBodyRange(&topln, &botln);
  14605.         if (disp->ds_ScrAry && (topln < botln) && (topln < disp->ds_ScrRows)) {
  14606.             clrmem(disp->ds_ScrAry + (UWORD)(topln) * disp->ds_ScrCols,
  14607.                 (botln - topln) * disp->ds_ScrCols);
  14608.         }
  14609.         ScrRowCol(botln, 1);
  14610.     }
  14611. }
  14612.  
  14613.  
  14614.  
  14615.  
  14616. LONG    ScrMainBodyRange(void *ptop, void *pbot) {
  14617.  
  14618.     if (ptop) {
  14619.         
  14620.         *(long *)ptop = CurDisplay->ds_ScrTop + 1;
  14621.     }
  14622.     if (pbot)
  14623.         *(long *)pbot = CurDisplay->ds_ScrRows - 4;    
  14624.     return (CurDisplay->ds_ScrRows - CurDisplay->ds_ScrTop - 4);      
  14625. }
  14626.  
  14627. LONG    ScrColumns(WORD overhead, WORD itemWidth, WORD limit) {
  14628.     LONG cols = (CurDisplay->ds_ScrCols - overhead) / itemWidth;
  14629.     LONG n;
  14630.  
  14631.     if (cols < 0)
  14632.         cols = 0;
  14633.     if (cols > limit)         
  14634.         cols = limit;
  14635.  
  14636.     for (n = 1; n <= cols; n <<= 1)   
  14637.         ;
  14638.     return (n >> 1);
  14639. }
  14640.  
  14641.  
  14642.  
  14643. __autoexit static void    ScrClose(void) {
  14644.     DBugDisp *disp;
  14645.  
  14646.     while ((disp = (DBugDisp *)DisplayList.lh_Head) != (DBugDisp *)&DisplayList.lh_Tail) {
  14647.         if(!disp) {
  14648.         break;
  14649.         }
  14650.         CloseDisplay(disp);
  14651.     }
  14652.        free_menus();
  14653. }
  14654.  
  14655. BOOL    CheckCloseDisplay(void) {
  14656.     DBugDisp    *disp;
  14657.     BOOL        retval = 1;
  14658.     BOOL        flag = 1;
  14659.  
  14660.     CheckClose = 0;
  14661.  
  14662.  
  14663.     while(flag) {
  14664.     flag = 0;
  14665.     for (disp = (DBugDisp *)DisplayList.lh_Head; disp->ds_Node.ln_Succ; disp = (DBugDisp *)disp->ds_Node.ln_Succ) {
  14666.         if (!disp->ds_DoneFlag) {
  14667.         
  14668.         retval = 0;
  14669.         }
  14670.         else {
  14671.         CloseDisplay(disp);
  14672.         flag = 1;
  14673.         break;    
  14674.         }
  14675.     }
  14676.     }
  14677.     return retval;
  14678. }
  14679.  
  14680.  
  14681. void    CloseDisplay(DBugDisp *disp) {
  14682.  
  14683.     if(!disp)return;
  14684.     Remove(&disp->ds_Node);
  14685.  
  14686.     if (disp->ds_CReadIP) {
  14687.         AbortIO((IOREQ *)&disp->ds_CReadReq);
  14688.         WaitIO((IOREQ *)&disp->ds_CReadReq);
  14689.         disp->ds_CReadIP = 0;
  14690.     }
  14691.     if (disp->ds_CWriteIP) {
  14692.         AbortIO((IOREQ *)&disp->ds_CWriteReq);
  14693.         WaitIO((IOREQ *)&disp->ds_CWriteReq);
  14694.         disp->ds_CWriteIP = 0;
  14695.     }
  14696.     if (disp->ds_CReadReq.io_Device) {
  14697.         CloseDevice((IOREQ *)&disp->ds_CReadReq);
  14698.         disp->ds_CReadReq.io_Device = 0L;
  14699.     }
  14700.     if (disp->ds_ScrAry) {
  14701.         Free(disp->ds_ScrAry);
  14702.         disp->ds_ScrAry = 0L;
  14703.     }
  14704.     if (disp->ds_Win) {
  14705.         
  14706.         
  14707.         
  14708.  
  14709.         RequestCloseDisplay(disp,1);
  14710.         ClearMenuStrip(disp->ds_Win);
  14711.         CloseWindow(disp->ds_Win);
  14712.         disp->ds_Win = 0L;
  14713.     }
  14714.  
  14715.     if(CurDisplay == disp) {
  14716.         CurDisplay = 0L;
  14717.     }
  14718.  
  14719.     FreeMem(disp, sizeof(DBugDisp));
  14720. }
  14721.  
  14722. char    version[] = "\0$VER: dd 1.18 (17.4.93)" " Copyright 1992, O.I.C., Redistribution and use under DICE-LICENSE\n";
  14723.  
  14724.  
  14725. static struct ExtNewWindow nw = {
  14726.     0,0,         
  14727.     640,200,     
  14728.     0,1,         
  14729.     0,         
  14730.     0x00000001|0x00000002|0x00000004|0x00000008|0x00000000|0x00001000,
  14731.     0L,         
  14732.     0L,         
  14733.     0L,         
  14734.     0L,         
  14735.     0L,         
  14736.     64,64,         
  14737.     -1,-1,         
  14738.     0x0001,     
  14739.     0L
  14740. };
  14741.  
  14742. DBugDisp *ScrOpen(BOOL first, BOOL refresh, char *pubname) {
  14743.     DBugDisp *disp;
  14744.     DBugDisp *old = CurDisplay;
  14745.     BOOL ok = 0;
  14746.  
  14747.     if (disp = AllocMem(sizeof(DBugDisp), (1L<<0)|(1L<<16))) {
  14748.         NewList((LIST *)&disp->ds_List);
  14749.         nw.LeftEdge = dprefs.left;
  14750.         nw.TopEdge = dprefs.top;
  14751.         nw.Width = dprefs.width;
  14752.         nw.Height = dprefs.height;
  14753.  
  14754.         if (old) {
  14755.             disp->ds_DisplayOffsets = old->ds_DisplayOffsets;
  14756.             disp->ds_DisplayMode = old->ds_DisplayMode;
  14757.             disp->ds_PreferedMode = old->ds_PreferedMode;
  14758.             disp->ds_WindowTop    = old->ds_WindowTop;
  14759.             disp->ds_WindowTopLine= old->ds_WindowTopLine;
  14760.             disp->ds_WindowBot    = old->ds_WindowBot;
  14761.             disp->ds_WindowBotLine= old->ds_WindowBotLine;
  14762.         }
  14763.         else {
  14764.             
  14765.             disp->ds_DisplayMode = dprefs.DefaultMode;
  14766.             disp->ds_PreferedMode = dprefs.DefaultMode;
  14767.             disp->ds_DisplayOffsets = dprefs.DefaultOffset;
  14768.             disp->ds_LastRefreshMode = DISPLAY_BYTES;
  14769.         }
  14770.  
  14771.         if(pubname && *pubname && (((struct Library *)SysBase)->lib_Version >= 36)) {
  14772.             struct Screen *pub_screen;
  14773.             struct TagItem wtags[3];
  14774.  
  14775.             nw.Flags |= 0x00040000;
  14776.             nw.Extension = wtags;
  14777.             wtags[0].ti_Tag = (((1L<<31) + 99) + 0x15);
  14778.             wtags[0].ti_Data = (ULONG)pubname;
  14779.  
  14780.             wtags[1].ti_Tag = (((1L<<31) + 99) + 0x17);
  14781.             wtags[1].ti_Data = 1;
  14782.             wtags[2].ti_Tag = (0L);
  14783.             wtags[2].ti_Data = 0;
  14784.  
  14785.                 if(pub_screen = LockPubScreen(pubname)) {
  14786.                 disp->ds_Win = OpenWindow((struct NewWindow *)&nw);
  14787.                 UnlockPubScreen(pubname,pub_screen);
  14788.             }
  14789.         }
  14790.         else {
  14791.             memset(DefaultPubName,0,128);    
  14792.             nw.Flags &= ~0x00040000;    
  14793.             disp->ds_Win = OpenWindow((struct NewWindow *)&nw);
  14794.         }
  14795.  
  14796.         if(disp->ds_Win) {
  14797.             PageFlag = 0;
  14798.             SetTitle(0L,disp);    
  14799.             disp->ds_Win->UserPort = &DBugPort;
  14800.  
  14801.             ModifyIDCMP(disp->ds_Win,0x00000002|0x00000008|0x00000200|0x00000004|0x00000100|0x00040000|0x00080000);
  14802.  
  14803.             disp->ds_CReadReq.io_Message.mn_ReplyPort = &DBugPort;
  14804.             disp->ds_CReadReq.io_Data = (APTR)disp->ds_Win;
  14805.             disp->ds_CReadReq.io_Length = sizeof(WINDOW);
  14806.             if (OpenDevice("console.device", 0, (IOREQ *)&disp->ds_CReadReq, 0) == 0) {
  14807.                 disp->ds_CWriteReq = disp->ds_CReadReq;
  14808.  
  14809.                 CurDisplay = disp;
  14810.                 QueueRead();
  14811.                 ScrPutsCtl("\x9b\x3f\x37\x6c");
  14812.                 ScrFlush();
  14813.                 GetWindowSize();
  14814.                 ok = 1;
  14815.  
  14816.                 setscrollbar(0);    
  14817.                 ModifyIDCMP(disp->ds_Win,0x00000002|0x00000008|0x00000200|0x00000004|0x00000100|0x00040000|0x00080000|0x00000010|0x00000040|0x00000020|0x00400000);
  14818.  
  14819.                 
  14820.                 init_default_menus();
  14821.                 enable_menus();
  14822.  
  14823.                 if (refresh)RefreshWindow(-1);
  14824.  
  14825.                 
  14826.                 
  14827.                 
  14828.                 
  14829.  
  14830.                 if (first == 0)    CurDisplay = old;
  14831.             }
  14832.         }
  14833.     }
  14834.     if (disp) {
  14835.         AddTail(&DisplayList, &disp->ds_Node);
  14836.     }
  14837.     if (ok == 0) {
  14838.         if (disp)CloseDisplay(disp);
  14839.         if (first) {
  14840.         exit(25);
  14841.         }
  14842.     }
  14843.     return disp;
  14844. }
  14845.  
  14846.  
  14847.  
  14848. void    GetWindowSize(void) {
  14849.     DBugDisp *disp;
  14850.     WINDOW     *win;
  14851.  
  14852.     if ((disp = CurDisplay) && (win = disp->ds_Win)) {
  14853.         UWORD rows = (win->Height - win->BorderTop - win->BorderBottom) / win->RPort->TxHeight;
  14854.         UWORD cols = (win->Width - win->BorderLeft - win->BorderRight) / win->RPort->TxWidth;
  14855.         if (rows != disp->ds_ScrRows || cols != disp->ds_ScrCols) {
  14856.             disp->ds_ScrRows = rows;
  14857.             disp->ds_ScrCols = cols;
  14858.             if (disp->ds_ScrAry)
  14859.                 Free(disp->ds_ScrAry);
  14860.             if (disp->ds_ScrAry = MallocPublic(rows * cols))
  14861.                 clrmem(disp->ds_ScrAry, rows * cols);
  14862.         }
  14863.     }
  14864. }
  14865.  
  14866.  
  14867.  
  14868.  
  14869.  
  14870.  
  14871.  
  14872.  
  14873.  
  14874.  
  14875.  
  14876.  
  14877.  
  14878.  
  14879.  
  14880.  
  14881.  
  14882.  
  14883.  
  14884.  
  14885.  
  14886.  
  14887.  
  14888.  
  14889. __geta4 void    EnterDebugger(void) {
  14890.     struct    MenuItem *item;
  14891.  
  14892.     if (CurDisplay && CurDisplay->ds_DisplayMode > DISPLAY_MIXED)
  14893.     SetDisplayMode(CurDisplay->ds_PreferedMode, 0);
  14894.  
  14895.     RefreshWindow(-1);
  14896.     ScrStatus("Ready");
  14897.     RefreshCommand(1);
  14898.     ScrCurson();
  14899.  
  14900.     SetSignal(0L,(1L<<4));    
  14901.     while (DisplayList.lh_Head != (NODE *)&DisplayList.lh_Tail) {
  14902.     ULONG    mask;
  14903.     MSG    *msg;
  14904.  
  14905.     if (CheckClose && CheckCloseDisplay()) {
  14906.         break;
  14907.     }
  14908.  
  14909.  
  14910.  
  14911.     mask = Wait( (1<<DBugPort.mp_SigBit) | (1<<RexxSigBit) );
  14912.     if (mask & (1<<DBugPort.mp_SigBit)) {
  14913.          while (msg = GetMsg(&DBugPort)) {
  14914.         DBugDisp    *disp;
  14915.  
  14916.         
  14917.         
  14918.  
  14919.         for (disp = (DBugDisp *)DisplayList.lh_Head; disp->ds_Node.ln_Succ; disp = (DBugDisp *)disp->ds_Node.ln_Succ) {
  14920.             if (msg == (MSG *)&disp->ds_CReadReq) {
  14921.             disp->ds_CReadIP = 0;
  14922.             CurDisplay = disp;
  14923.             HandleConsoleInput(disp, disp->ds_CInChar);
  14924.             CurDisplay = disp;
  14925.             QueueRead();
  14926.             msg = 0L;
  14927.             break;
  14928.             }
  14929.         }
  14930.         if (msg == 0L)continue;
  14931.  
  14932.         
  14933.         
  14934.  
  14935.         CurDisplay = 0L;
  14936.         for (disp = (DBugDisp *)DisplayList.lh_Head; disp->ds_Node.ln_Succ; disp = (DBugDisp *)disp->ds_Node.ln_Succ) {
  14937.             if (((IMSG *)msg)->IDCMPWindow == disp->ds_Win) {
  14938.             CurDisplay = disp;
  14939.             break;
  14940.             }
  14941.         }
  14942.         if (CurDisplay) {
  14943.             switch (((IMSG*)msg)->Class) {
  14944.             case 0x00000200:
  14945.             RequestCloseDisplay(CurDisplay,0);
  14946.             break;
  14947.  
  14948.                 case 0x00000002:
  14949.                 GetWindowSize();
  14950.                 {
  14951.                     WINDOW    *window = CurDisplay->ds_Win;
  14952.                     dprefs.left = window->LeftEdge; dprefs.top = window->TopEdge;
  14953.                     dprefs.width = window->Width; dprefs.height = window->Height;
  14954.                 }
  14955.                 ScrClr();
  14956.                 setscrollbar(1);    
  14957.                 RefreshWindow(-1);
  14958.                 ScrStatus("Window Resized");
  14959.                 RefreshCommand(1);
  14960.                 ScrFlush();
  14961.                 break;
  14962.  
  14963.             case 0x00000008:
  14964.  
  14965.  
  14966.  
  14967.  
  14968.  
  14969.  
  14970.  
  14971.                 switch(((IMSG *)msg)->Code) {
  14972.  
  14973.                 USHORT newrow, newcol, nc, nr;
  14974.                 case (0x68 | 0x80):
  14975.                 break;
  14976.                 case (0x68):
  14977.  
  14978.                     newcol = (((IMSG *)msg)->MouseX);
  14979.                     nc = newcol >> 3;
  14980.                     newrow = (((IMSG *)msg)->MouseY);
  14981.                     nr = newrow >> 3;
  14982.  
  14983.                     
  14984.                     if((oldcol == nc) && (oldrow == nr)) {
  14985.                      
  14986.                      
  14987.                     char *string="bp\r";
  14988.                         while (*string) {
  14989.                             HandleConsoleInput(disp,*string++);
  14990.                     }
  14991.                     oldcol = oldrow = 0xFFFF;
  14992.                     }
  14993.                     else {
  14994.                         oldcol = nc;
  14995.                         oldrow =  nr;
  14996.  
  14997.                         
  14998.                         
  14999.  
  15000.                         ProcessDataAtCoord(disp, newcol, newrow);
  15001.                     }
  15002.                     
  15003.  
  15004.  
  15005.                 break;
  15006.                 }
  15007.                 break;
  15008.  
  15009.             case 0x00000004:
  15010.                 BeginRefresh(disp->ds_Win);
  15011.                 EndRefresh(disp->ds_Win, 1);
  15012.                 break;
  15013.  
  15014.             case 0x00080000:
  15015.                 InActivateArrows(disp->ds_Win);
  15016.                 break;
  15017.  
  15018.             case 0x00040000: {
  15019.  
  15020.  
  15021.  
  15022.                 PageFlag = 0;
  15023.                 ActivateArrows(disp->ds_Win);
  15024.                 RefreshCommand(1);
  15025.                 break;
  15026.             }
  15027.  
  15028.             case 0x00400000:
  15029.                 if(PageFlag) {    
  15030.                 Ticked = 1;
  15031.                 ScrCursoff();
  15032.                 if( PageFlag == 1)DoCommand("UP");
  15033.                 else DoCommand("DOWN");
  15034.                 RefreshPrompt(1);
  15035.                 RefreshCommand(1);
  15036.                 ScrCurson();
  15037.                 }
  15038.                 break;
  15039.  
  15040.             case 0x00000040: {
  15041.                 unsigned int id;
  15042.                 APTR address = ((IMSG *)msg)->IAddress;
  15043.                 if( (id = ((struct Gadget *)address)->GadgetID) != 0) {
  15044.                     PageFlag = 0;
  15045.                     if(Ticked) {
  15046.                     Ticked = 0;
  15047.                     break;
  15048.                     }
  15049.                     ScrCursoff();
  15050.                     if( id == 1)DoCommand("UP");
  15051.                     else DoCommand("DOWN");
  15052.                     RefreshPrompt(1);
  15053.                     RefreshCommand(1);
  15054.                     ScrCurson();
  15055.                 }
  15056.                 break;
  15057.             }
  15058.  
  15059.             case 0x00000010:
  15060.                 if(++count&1) {
  15061.                 break;     
  15062.                 }        
  15063.  
  15064.             case 0x00000020: {
  15065.                 ULONG current, last;
  15066.                 unsigned int id;
  15067.                 APTR address = ((IMSG *)msg)->IAddress;
  15068.  
  15069.                 if( (id = ((struct Gadget *)address)->GadgetID) != 0) {
  15070.                 PageFlag = (id == 1) ? 1 : 2;
  15071.                 Ticked = 0;
  15072.                 break;
  15073.                 }
  15074.                 switch (CurDisplay->ds_DisplayMode) {
  15075.                 case DISPLAY_DISM:
  15076.                 case DISPLAY_SOURCE:
  15077.                 case DISPLAY_MIXED:
  15078.                 case DISPLAY_BYTES:
  15079.                 case DISPLAY_WORDS:
  15080.                 case DISPLAY_LONGS:
  15081.                     last = (ScrollEnd - ScrollStart) >> 5;
  15082.                     break;
  15083.  
  15084.                 case DISPLAY_HELP:
  15085.                     last = HelpSize();
  15086.                     break;
  15087.  
  15088.                 case DISPLAY_SYMBOL:
  15089.                     last = SymbolCount;
  15090.                     break;
  15091.  
  15092.                 case DISPLAY_HUNKS:
  15093.                         last = numHunks;
  15094.                         break;
  15095.  
  15096.                 case DISPLAY_BREAK:
  15097.                     last = 32+5;
  15098.                     break;
  15099.  
  15100.                     default:
  15101.                         last = SizeDLIST(&CurDisplay->ds_List);
  15102.                 }
  15103.                 current = FindScrollerTop(last, CurDisplay->ds_ScrRows, ColorPropInfo.VertPot);
  15104.                 
  15105.                 switch(CurDisplay->ds_DisplayMode) {
  15106.                 case DISPLAY_DISM:
  15107.                 case DISPLAY_SOURCE:
  15108.                 case DISPLAY_MIXED:
  15109.                 case DISPLAY_BYTES:
  15110.                 case DISPLAY_WORDS:
  15111.                 case DISPLAY_LONGS:
  15112.                     if((ScrollStart + (current << 5)) != CurDisplay->ds_WindowTop) {
  15113.                     CurDisplay->ds_WindowTop = ScrollStart + (current << 5);
  15114.                     CurDisplay->ds_WindowTopLine = 0;
  15115.                     RefreshWindow(1);
  15116.                     }
  15117.                     break;
  15118.                 case DISPLAY_BREAK:
  15119.                     if(topBP != current) {
  15120.                     topBP = current;
  15121.                     RefreshWindow(1);
  15122.                     }
  15123.                     break;
  15124.                 default:;
  15125.                     if(CurDisplay->ds_WindowTop != current) {
  15126.                     CurDisplay->ds_WindowTop = current;
  15127.                     CurDisplay->ds_WindowTopLine = 0;
  15128.                     RefreshWindow(1);
  15129.                     }
  15130.                 }
  15131.                 break;
  15132.             }
  15133.  
  15134.  
  15135.             case 0x00000100: {
  15136.                 USHORT code = ((IMSG *)msg)->Code;
  15137.                 char *string;
  15138.  
  15139.                 if (!code || (code == 0xFFFF))break;
  15140.                 while (code && (code != 0xFFFF)) {  
  15141.                     item = ItemAddress(DebugMenu,(LONG) code);
  15142.                     string = (* ( (APTR *)(item+1) ) );
  15143.                     while (*string) {
  15144.                         HandleConsoleInput(disp,*string++);
  15145.                     }
  15146.                     HandleConsoleInput(disp,'\r');
  15147.                     code = item->NextSelect;
  15148.                 }
  15149.                 break;
  15150.             }
  15151.  
  15152.             default:
  15153.  
  15154.             break;
  15155.             }
  15156.         }
  15157.         if(msg)ReplyMsg(msg);
  15158.         }
  15159.     }
  15160.  
  15161.     if (mask & (1<<RexxSigBit)) {
  15162.         ProcessRexxCommands(0L);
  15163.     }
  15164.     }
  15165. }
  15166.  
  15167. void    HandleConsoleInput(DBugDisp *disp, WORD c) {
  15168.     switch(c) {
  15169.     case -1:
  15170.         break;
  15171.     case 3:
  15172.         RequestCloseDisplay(disp,1);
  15173.         break;
  15174.     case 8:
  15175.         if (commandCol) {
  15176.             UWORD    col;
  15177.  
  15178.             if (commandEnd == commandCol) commandEnd--;
  15179.             commandCol--;
  15180.             for (col=commandCol; col<commandEnd; col++) {
  15181.                 commandLine[col] = commandLine[col+1];
  15182.             }
  15183.             ScrCursoff();
  15184.             RefreshCommand(1);
  15185.             ScrCurson();
  15186.         }
  15187.         break;
  15188.     case 13:
  15189.         commandLine[commandEnd] = '\0';
  15190.         ScrCursoff();
  15191.         commandEnd = 0;     
  15192.         DoCommand(commandLine);
  15193.         ScrCurson();
  15194.         InitCommand();        
  15195.         ScrCursoff();
  15196.         RefreshCommand(1);
  15197.         ScrCurson();
  15198.         break;
  15199.     case 18:
  15200.         ScrCursoff();
  15201.         RefreshWindow(0);
  15202.         ScrCurson();
  15203.     case 24:
  15204.         InitCommand();
  15205.         ScrCursoff();
  15206.         RefreshCommand(1);
  15207.         ScrCurson();
  15208.         break;
  15209.     case 0x9b:
  15210.         disp->ds_CsiState = 1;
  15211.         break;
  15212.     default:
  15213.         switch (disp->ds_CsiState) {
  15214.         case 0:
  15215.             if (c >= ' ') {
  15216.                 commandLine[commandCol] = c;
  15217.                 if (commandCol == commandEnd) commandEnd++;
  15218.                 commandCol++;
  15219.                 ScrCursoff();
  15220.                 RefreshCommand(1);
  15221.                 ScrCurson();
  15222.             }
  15223.             break;
  15224.         case 1:
  15225.             ScrCursoff();
  15226.  
  15227.             switch (c) {
  15228.             case ' ': disp->ds_CsiState = 3; break;
  15229.             case '0': disp->ds_CsiState = 2; FunctionKey(0); break;
  15230.             case '1': disp->ds_CsiState = 2; FunctionKey(1); break;
  15231.             case '2': disp->ds_CsiState = 2; FunctionKey(2); break;
  15232.             case '3': disp->ds_CsiState = 2; FunctionKey(3); break;
  15233.             case '4': disp->ds_CsiState = 2; FunctionKey(4); break;
  15234.             case '5': disp->ds_CsiState = 2; FunctionKey(5); break;
  15235.             case '6': disp->ds_CsiState = 2; FunctionKey(6); break;
  15236.             case '7': disp->ds_CsiState = 2; FunctionKey(7); break;
  15237.             case '8': disp->ds_CsiState = 2; FunctionKey(8); break;
  15238.             case '9': disp->ds_CsiState = 2; FunctionKey(9); break;
  15239.             case '?': disp->ds_CsiState = 2; HelpKey(); break;
  15240.             case 'A': DoCommand("up"); break;
  15241.             case 'B': DoCommand("down"); break;
  15242.             case 'C': DoCommand("right"); break;
  15243.             case 'D': DoCommand("left"); break;
  15244.             case 'T': DoCommand("pageup"); break;
  15245.             case 'S': DoCommand("pagedown"); break;
  15246.             }
  15247.  
  15248.             if (disp->ds_CsiState == 1) disp->ds_CsiState = 0;
  15249.             RefreshPrompt(1);
  15250.             RefreshCommand(1);
  15251.             ScrCurson();
  15252.             break;
  15253.         case 2:
  15254.             disp->ds_CsiState = 0;
  15255.             break;    
  15256.         case 3:
  15257.             ScrCursoff();
  15258.             switch (c) {
  15259.                 case 'A': DoCommand("shift-left"); break;
  15260.                 case '@': DoCommand("shift-right"); break;
  15261.             }
  15262.             disp->ds_CsiState = 0;
  15263.             ScrCurson();
  15264.             break;
  15265.         }
  15266.     }
  15267. }
  15268.  
  15269.  
  15270.  
  15271.  
  15272.  
  15273.  
  15274.  
  15275.  
  15276.  
  15277.  
  15278.  
  15279.  
  15280. void    RequestCloseDisplay(DBugDisp *disp, int force) {
  15281.     struct DBugDisp *ndisp;
  15282.     int count = 0;
  15283.     struct IntuiText body = {0,1,0,0,5,0L,"Last DD window.  Really quit ?",0L};
  15284.     struct IntuiText ok = {0,1,0,0,0,0L,"OK",0L};
  15285.     struct IntuiText cancel = {0,1,0,0,0,0L,"CANCEL",0L};
  15286.  
  15287.     if (disp && disp->ds_DoneFlag == 0) {
  15288.         disp->ds_DoneFlag = 1;
  15289.  
  15290.         
  15291.         if(!force) {
  15292.             
  15293.             
  15294.             for (ndisp = (DBugDisp *)DisplayList.lh_Head; ndisp->ds_Node.ln_Succ; ndisp = (DBugDisp *)ndisp->ds_Node.ln_Succ) {
  15295.                 if (!ndisp->ds_DoneFlag)count++;
  15296.             }
  15297.             if(count == 0) {    
  15298.                 if(!AutoRequest(disp->ds_Win,&body,&ok,&cancel,0L,0L,300,80)) {
  15299.             disp->ds_DoneFlag = 0;    
  15300.             return;
  15301.             }
  15302.             }
  15303.             }
  15304.  
  15305.         CheckClose = 1;
  15306.         if (disp->ds_Win) {
  15307.             Forbid();
  15308.             ModifyIDCMP(disp->ds_Win, 0x00001000);
  15309.             disp->ds_Win->UserPort = 0L;
  15310.             ModifyIDCMP(disp->ds_Win, 0);
  15311.             Permit();
  15312.         }
  15313.     }
  15314. }
  15315.  
  15316. void    ProcessDataAtCoord(DBugDisp *disp, WORD x, WORD y) {
  15317.     WINDOW *win = disp->ds_Win;
  15318.     WORD row = (y - win->BorderTop) / win->RPort->TxHeight;
  15319.     WORD col = (x - win->BorderLeft) / win->RPort->TxWidth;
  15320.     UBYTE *ptr = &disp->ds_ScrAry[row * disp->ds_ScrCols + col];
  15321.     WORD len;
  15322.     WORD i;
  15323.  
  15324.     if (ValidClipChar[*ptr] == 0) {
  15325.         switch (*ptr) {
  15326.         case '*':
  15327.         case '-':
  15328.         case '/':
  15329.             HandleConsoleInput(disp, *ptr);
  15330.             break;
  15331.         case '<':
  15332.             HandleConsoleInput(disp, 'x'&0x1F);
  15333.             break;
  15334.         case '>':
  15335.             HandleConsoleInput(disp, 13);
  15336.             break;
  15337.         case ' ':
  15338.         case 0:
  15339.             
  15340.             
  15341.             
  15342.             
  15343.  
  15344.             if (row == disp->ds_ScrRows - 3 && col > disp->ds_PromptLen + 2) {
  15345.                 HandleConsoleInput(disp, 13);
  15346.             }
  15347.             break;
  15348.         }
  15349.         return;
  15350.     }
  15351.     while (col >= 0 && ValidClipChar[*ptr]) {
  15352.         --col;
  15353.         --ptr;
  15354.     }
  15355.     ++col;
  15356.     ++ptr;
  15357.     for (len = 0; ValidClipChar[ptr[len]] && col + len < disp->ds_ScrCols; ++len)
  15358.         ;
  15359.     {
  15360.         char *jp;
  15361.         int nflag = 0;
  15362.  
  15363.         if(*ptr == '-')nflag = 1;
  15364.         if (ptr[nflag] == '$' || (len == 8 && (strtol(ptr, &jp, 16), (jp - ptr == 8)))) {
  15365.                 if(nflag) {
  15366.                 HandleConsoleInput(disp, '-');
  15367.                 ++ptr;
  15368.                 --len;
  15369.             }
  15370.  
  15371.             HandleConsoleInput(disp, '0');
  15372.             HandleConsoleInput(disp, 'x');
  15373.             ++ptr;
  15374.             --len;
  15375.         }
  15376.     }
  15377.     if (len == 2 && ptr[0] == '+' && ptr[1] == '+')--len;
  15378.  
  15379.     
  15380.  
  15381.     if (len == 1 && ptr[0] >= '1' && ptr[0] <= '9' && ptr[1] == ':') {
  15382.         FunctionKey(ptr[0] - '1');
  15383.         return;
  15384.     }
  15385.     
  15386.     if(len == 2 && ptr[0] == '1' && ptr[1] == '0' && ptr[2] == ':') {
  15387.         FunctionKey(9);
  15388.         return;
  15389.     }
  15390.  
  15391.     for (i = 0; i < len; ++i)HandleConsoleInput(disp, ptr[i]);
  15392.  
  15393.     if((len == 2) && (ptr[2] == ':')) {    
  15394.             HandleConsoleInput(disp, ':');
  15395.     }
  15396.  
  15397.     for(i=0; i<= 9; i++) {
  15398.         if(!strncmp(ptr,fkeys[i],len)) {
  15399.         HandleConsoleInput(disp, '\r');
  15400.         return;
  15401.         }
  15402.     }
  15403.     HandleConsoleInput(disp, ' ');
  15404. }
  15405.  
  15406. char    *ModeNames[10] = {
  15407.     "DISM MODE",
  15408.     "SOURCE MODE",
  15409.     "MIXED MODE",
  15410.     "BYTES (HEX)",
  15411.     "WORDS (HEX)",
  15412.     "LONGS (HEX)",
  15413.     "HUNKS",
  15414.     "SYMBOLS",
  15415.     "ONLINE HELP",
  15416.     "BREAKPOINTS"
  15417. };
  15418.  
  15419.  
  15420.  
  15421.  
  15422.  
  15423.  
  15424. void SetTitle(char *title, DBugDisp *disp)
  15425. {
  15426.     int type;
  15427.     DBugDisp *ldisp = disp;
  15428.  
  15429.     if(!ldisp)ldisp=CurDisplay;
  15430.     type = ldisp->ds_DisplayMode;
  15431.  
  15432.     strcpy(ldisp->ds_windowTitle, " (" "dd 1.18" " PORT: ");
  15433.     strcat(ldisp->ds_windowTitle,rexxhostname);
  15434.     strcat(ldisp->ds_windowTitle,") ");
  15435.  
  15436.     if((type < 10) && !title) {
  15437.     strcat(ldisp->ds_windowTitle,ModeNames[type]);
  15438.     }
  15439.     else {
  15440.     strcat(ldisp->ds_windowTitle,title);
  15441.     }
  15442.     strcat(ldisp->ds_windowTitle," ");
  15443.  
  15444.     strcat(ldisp->ds_windowTitle, targetName);
  15445.     if(argSize > 1)strncat(ldisp->ds_windowTitle, args, argSize-1);
  15446.     SetWindowTitles(ldisp->ds_Win,ldisp->ds_windowTitle,0L);
  15447. }
  15448.  
  15449. void draw_fkey_boxes(void)
  15450. {
  15451. int i,xcol = 2,yrow = CurDisplay->ds_ScrRows, xlen;
  15452.  
  15453.     for(i=0; i < 10; i++) {
  15454.     xlen = strlen(fkeys[i]) + ((i == 9) ? 3 : 2);
  15455.     drawbox(xcol,yrow,xlen, -1);
  15456.     xcol += (xlen+1);
  15457.     }
  15458. }
  15459.  
  15460.  
  15461.  
  15462. void drawbox(int xcol,int yrow, int xcollen, int yrowlen)
  15463. {
  15464.     WINDOW     *win;
  15465.     RPORT     *rp;
  15466.     int x,y,xlen,ylen, xmax, ymax;
  15467.  
  15468.     if(win = CurDisplay->ds_Win) {
  15469.     rp = win->RPort;
  15470.  
  15471.         y = win->BorderTop + ((yrow)  * rp->TxHeight);
  15472.     x = xcol * rp->TxWidth - 4;
  15473.     xlen = xcollen * rp->TxWidth + 1;
  15474.     ylen = rp->TxHeight + 3;
  15475.  
  15476.     if(x > (xmax = CurDisplay->ds_ScrCols * rp->TxWidth - 1))return; 
  15477.     xlen = (x+xlen) <= xmax ? xlen : xmax-x;
  15478.  
  15479.     SetAPen(rp,2);    
  15480.     Move(rp,x,y);
  15481.     Draw(rp,x,y-ylen);
  15482.     Draw(rp,x+xlen,y-ylen);
  15483.  
  15484.     SetAPen(rp,1);    
  15485.     Draw(rp,x+xlen,y);
  15486.     if(y > (ymax = win->Height - 3))return; 
  15487.     Draw(rp,x,y);
  15488.     }
  15489. }
  15490.  
  15491.  
  15492.  
  15493. void drawdoublebox(void)
  15494. {
  15495.     WINDOW     *win;
  15496.     RPORT     *rp;
  15497.     int x, y, xlen, ylen, i, j;
  15498.  
  15499.     if(win = CurDisplay->ds_Win) {
  15500.     rp = win->RPort;
  15501.     x = win->BorderLeft; 
  15502.         y = win->BorderTop + (CurDisplay->ds_ScrRows-2) * rp->TxHeight + 2;
  15503.  
  15504.     xlen = win->Width - win->BorderRight - win->BorderLeft - 2;
  15505.     ylen = rp->TxHeight + 6;
  15506.  
  15507.     for(i=2, j=0; i>0; i--, j++) {
  15508.         SetAPen(rp,i);
  15509.  
  15510.  
  15511.         Move(rp,x+j,y-ylen+j);
  15512.         Draw(rp,x+xlen+j,y-ylen+j);
  15513.  
  15514.         Move(rp,x+xlen+j,y+j);
  15515.         Draw(rp,x+j,y+j);
  15516.     }
  15517.     }
  15518. }
  15519.